HTML, CSS, JavaScript, DOM, Node.
Visual Studio Code
- Instalar e configurar
- Site: https://code.visualstudio.com/download
- Extenções
Material Icons ThemeOmni ThemePrettier - Code Formatter
Git Bash
- Windows
- Instalar e configurar
- Site: https://git-scm.com/downloads
Git Hub
- Verificar versão do git
- Configurar o Git
git --version
git config --global user.name "Daniel Oliveira"
git config --global user.email "xxxxxxxx@gmail.com"
- Clonar o repositorio inicial boilerplate
gh repo clone rocketseat-education/explorer-lab-01
Git Cli
- Instalar e configurar
- Site: https://cli.github.com/
Node.Js
- Instalar e configurar LTS
- Site: https://nodejs.org/en/
Vite
- Instalar e configurar
- Site: https://vitejs.dev/
npm create vite@latest
- NPM
node_modulespackage.lock.json
npm install
- Rodar o projeto
npm run dev
Document Object Model
- Modelagem do documento como objeto javascript
Representação do HTML em objetos javascript
- Atributos (Propriedades) e métodos (Funcionalidades)
Criado pelo navegador (Browser)
- É uma interface (API) usada no navegador
DevTools
- Através das ferramentas do desenvolvedor
Dev Tools, observaremos a DOM.
//Objeto global presente em qualquer página no navegador
window
//Representação do documento
documentPrimeiros passos na DOM
- Pegar elementos HTML
- Substituição de atributo
- Disponibilizando funções globais
Imask.js
-
Instalar
npm install imask
- import
import IMask from 'imask';
- Simple use case:
//Exemplo documentação
var element = document.getElementById('selector');
var maskOptions = {
mask: '+{7}(000)000-00-00'
};
var mask = IMask(element, maskOptions);- Para máscaras aninhadas complexas, há uma opção de blocos disponível:
//Exemplo de Blocks
var blocksMask = IMask(element, {
mask: 'Ple\\ase fill ye\\ar 19YY, month MM \\and v\\alue VL',
lazy: false, // make placeholder always visible
blocks: {
YY: {
mask: '00',
},
MM: {
mask: IMask.MaskedRange,
from: 1,
to: 12
},
VL: {
mask: IMask.MaskedEnum,
enum: ['TV', 'HD', 'VR']
}
}
});- Pegar o '22' de 2022
String(new Date().getFullYear()).slice(2);Expressões regulares
- Regex com JavaScript
Expressões regulares
Também conhecida como Regular Expression ou Regex é uma tecnologia usada para buscar padrões dentro de textos e funciona em diversas linguagens
- Exemplo: Busque por todos os caracteres numéricos dentro de algum texto
Como pensar ?
Existe uma maneira correta de pensar ao utilizar essa tecnologia para buscar de padrões
-
Leitura da esquerda para direita
-
Ler um caractere de cada vez, um após o outro
-
Conhecer os caracteres reservados da tecnologia
-
Criando regex no JavaScript
//Exemplo
const re = /foo/;
const re = new RegExp(/foo/);- Funções usadas em Strings
Existem diversas maneiras de usar expressões regulares em uma string no javaScript. Abaixo, vamos verificar 3
//Agrupa os padrões em um array
const matches = 'aBC'.match(/[A-Z]/g);
//Output: Array [B, C]
//Pesquisa se existe ou não o padrão
const index = 'aBC'.search(/[A-Z]/);
//Output: 1
//Substitui os padrões por novo valor
const next = 'aBC'.replace(/a/, 'A');
//Output: ABCCheatsheet
Básico
/ expression / flagsExemplo:/[A-Z]+/g\Usar caracteres especiais Exmplo:/ Oi\?\*\\/()Agrupador|OU lógicoFala Devpesquisa extra^FalaStart of the stringDev$End of the string
Colchetes
[XYZ]Qualquer um, x, y, z[J-Z]Qualquer caracter entre J e Z[^xyz]Nenhum X, Y, Z
Classes de caracteres
\wPalavra\ddígito\sespaços em branco(tabs, quebras de linha)\wNÃO palavra\DNÃO dígito\SNÃO espaços em branco\ttabs,\nquebra de linha.Qualquer caracter (exceto nova linha)?Zero ou uma ocorrências*Zero ou múltiplas ocorrências{n}n ocorrências{min, max}Mínima / Máxima ocorrências
Testando Expressões
Podemos testar de diversas formas, desde diretamente no código, ou:
- Direto no Editor (VSCODE) Search and Replace
- Online RegExr: Learn, Build, & Test RegEx
Referências
- https://www.youtube.com/watch?v=sa-TUpSx1JA
- https://www.fireship.io/lessons/regex-cheat-sheet-js/
- https://www.debuggex.com/cheatsheet/regex/javascript
Expressões regulares
Visa:
Inicia com 4 seguido de mais 15 dígitos.
Mastercard:
Inicia com 5, seguido de um dígito entre 1 e 5, seguido de mais 2 dígitos.
Inicia com 22, seguido de um dígito entre 2 e 9, seguido de mais 1 dígitos.
Inicia com 2, seguido de um dígito entre 3 e 7, seguido de mais 2 dígitos seguido de mais 12 dígitos.Visa:
/^4\d{0,15}/
Mastercard:
/(^5[1-5]\d{0,2}|^22[2-9]\d|^2[3-7]\d{0,2})\d{0,12}/
Manipulação de eventos da DOM
- Clique do botão
- Desativar o reload do submit
- obtendo e exibindo o nome do titular
Eventos do iMask
-
By: Daniel Oliveira
Instagram- https://www.instagram.com/danieloliv3/Facebook- https://web.facebook.com/danielsapup3/Twitter- https://twitter.com/danielsapup3/Linkedin- https://www.linkedin.com/in/danielsapup3/