4 instruções JavaScript úteis que você deve saber
Declarações JavaScript nos dão o poder de implementar diferentes tipos de lógica em nosso código. O JavaScript nos fornece vários deles, todos com sua finalidade e sintaxe. Entre os exemplos mais conhecidos, podemos encontrar instruções de expressão, declarações de iteração, declarações condicionais e muito mais
No post de hoje vamos ver quatro instruções JavaScript menos comuns você pode não ter sabido antes, mas pode aprofundar seu conhecimento de JavaScript e permitir que você escreva um código melhor.
1. Declaração Vazia
No lugar de qualquer instrução JavaScript, você pode adicionar uma instrução vazia, que é escrita como um único ponto-e-vírgula ;
. Quando o interpretador JavaScript interpreta uma instrução vazia, nenhum código é executado, portanto, eles podem ser úteis para substituir sub-declarações que você não deseja executar.
Por exemplo, suponha que exista uma variável chamada tornassol
com o valor padrão neutro
. Baseado no valor de outra variável chamada pH
, tornassol
muda para qualquer ácido
quando pH < 7 or básico
quando pH> 7.
Se o valor de pH
acaba por ser inválido, um erro é lançado. Para condição assim, as seguintes declarações condicionais se aplicam:
var litmus = 'neutral'; var pH; if (pH> 0 && pH<7) litmus = 'acidic'; else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
No entanto, o conjunto de instruções acima gera um erro quando pH
o valor é 7, o que não deveria ser o caso.
Quando pH
é 7, tornassol
deve manter seu valor padrão, ou seja, neutro
. Então, para um caso como este, adicione uma condição quando pH
é 7 com uma declaração vazia à direita.
var litmus = 'neutral'; var pH; if (pH> 0 && pH<7) litmus = 'acidic'; else if(pH===7) ; /* empty statement */ else if(pH>7 && pH<15) litmus = 'basic'; else throw "Invalid pH value";
Agora quando pH
é 7, o intérprete não executa nenhuma instrução, e tornassol
mantém seu valor padrão, neutro
.
Instruções vazias também podem ser usadas para preencher uma matriz com a ajuda do para
laço.
var ary = []; para (var i = 0; i < 5; ary[i++] = i) ; /* empty statement */ console.log(ary); // [1, 2, 3, 4, 5]
Normalmente, um para
A instrução loop é seguida por uma sub-instrução que é composta de uma única instrução ou de uma instrução de bloco (aquela contida chaves) para ser executado. Usando uma declaração vazia no lugar da sub-instrução, o interpretador não terá nada para executar após cada loop, então apenas o looping ocorre e as condições de loop são executadas.
No exemplo acima, ary [i ++] = i
executa para cada iteração de loop como parte da condição de loop e a matriz ary
é instanciado com valores de Eu
.
2. O depurador
Declaração
Em ferramentas de depuração, podemos adicionar marcadores chamado pontos de interrupção para qualquer linha no código-fonte para marque as linhas de onde a ferramenta debugger irá iniciar a depuração.
Em JavaScript, o depurador
declaração funciona da mesma maneira que um ponto de interrupção, exceto que é adicionado ao código-fonte diretamente, em vez de dentro de uma ferramenta. Qualquer depurador em execução interromper a execução do script quando atinge o depurador
declaração, a fim de ajudá-lo a depurar o código.
Lembre-se, a depuração será acionada somente se o script estiver sendo executado em um modo de depuração, ou seja, um programa de depuração já está sendo executado na execução do script. Se não houver nenhum programa de depuração atualmente em execução durante a interpretação depurador
declaração, o intérprete continuará seu trabalho como se nada tivesse acontecido.
Como um teste rápido, execute o seguinte código no Codepen, mantendo a ferramenta de depuração do navegador aberta:
console.log ('tesing'); depurador; console.log ('instrução de depuração');
Você verá um ponto de interrupção além do depurador
declaração como mostrado abaixo na ferramenta de depuração do navegador.
3. Declaração Etiquetada
Em JavaScript, você também pode adicionar rótulos a determinadas instruções. Ao fazer isso, você pode depois pule para a declaração rotulada usando seu rótulo em seu código, mais ou menos como o vamos para
declaração funciona em outros idiomas.
Declarações rotuladas só podem ser usadas em conjunto com o pausa
e continuar
declarações, como em JavaScript não há literal vamos para
declaração.
Ambos pausa
e continuar
só pode ser usado dentro de instruções de loop, como o para
loop (com uma exceção, pausa
pode ser usado no interruptor
declaração também). Então, podemos rotular loops e usar pausa
e continuar
para controlar sua execução.
o sintaxe de declarações rotuladas é simples, você só precisa adicionar o nome do rótulo com os dois pontos a seguir, como você pode ver no exemplo abaixo, onde laço
é o nome do rótulo que adicionamos ao para
laço.
loop: para (var i = 0; i<5; i++) if(i===2) continue loop; console.log(i); // 0, 1, 3, 4
Quando o valor de Eu
é 2, a execução retorna ao loop em vez de prosseguir e, portanto, impede a saída do console “2”.
Agora vamos ver outro exemplo com o pausa
declaração. Basta substituir o continuar
palavra-chave com pausa
no exemplo acima, e você notará que, em vez de voltar para o loop, como aconteceu com continuar
, o loop termina / quebra completamente.
loop: para (var i = 0; i<5; i++) if(i===2) break loop; console.log(i); // 0, 1
Os exemplos acima foram bastante simples para que você possa entender rapidamente como as instruções rotuladas funcionam, mas na codificação da vida real, os rótulos são usados com mais frequência em loops compostos, quando é necessário distinguir os loops diferentes, como no exemplo a seguir:
loop: para (var i = 0; i<4; i++) for(var j=0; j<2; j++) if(i===2 && j===1) break loop; console.log(i+"-"+j);
Aqui o laço externo rompe no valor 2 para variável Eu
e em 1 para j
, e o console retorna a seguinte saída:
0-0 0-1 1-0 1-1 2-0
4. O com
Declaração
Quando o intérprete de JS se depara com um nome não qualificado que não especifica qual objeto ou função a chamada está associada, procura na cadeia de escopo para qualquer objeto ou função adequada, a chamada pode se referir a.
Usando o com
declaração, nós podemos adicionar um objeto ao topo da cadeia de escopo, e especifique qual objeto a chamada está associada.
No exemplo a seguir, você pode ver que as propriedades do pessoa
objeto são chamados usando seus nomes sozinho dentro do com
declaração.
var person = firstName: "João", lastName: "Doe", idade: "18", país: "Groenlândia"; com (pessoa) console.log ("Olá, meu nome é" + firstName + "" + lastName + ". Tenho" + age + "anos e moro em" + country + "."); // "Olá, meu nome é John Doe. Tenho 18 anos e moro na Groenlândia."
Compare como o código acima ficaria sem usar o com
declaração:
var person = firstName: "João", lastName: "Doe", idade: "18", país: "Groenlândia"; console.log ("Olá, meu nome é" + person.firstName + "" + person.lastName + ". Sou" + person.age + "anos e moro em" + person.country + "." ); // "Olá, meu nome é John Doe. Tenho 18 anos e moro na Groenlândia."
Você pode ver o com
statement pode ser um ótimo atalho se você trabalha com muitas propriedades do mesmo objeto.
Note, no entanto, que usando o com
declaração no modo estrito não é permitido, uma vez que pode causar alguma confusão.
Além disso, só é aconselhável usar o com
declaração se suas declarações internas usarem o objeto associado ao com
declaração, caso contrário, o intérprete perderá tempo examinando o objeto mencionado por com
primeiro, para todos os nomes de propriedades não qualificadas que ele encontra com
quadra.