Há uma pergunta de entrevista do JS, a pergunta é a seguinte: Qual é o resultado da execução do código a seguir e por quê?
A cópia do código é a seguinte:
var i, j, k;
for (i = 0, j = 0; i <10, j <6; i ++, j ++) {
k = i+j;
}
document.write (k);
A resposta é mostrar 10. Esta pergunta examina principalmente o operador de vírgula do JavaScript.
Aqui está a definição do operador de vírgula da MDN:
O operador de vírgula calcula dois operandos (da esquerda para a direita) e retorna o valor do segundo operando.
De acordo com esta definição, você pode estendê -la:
O operador de vírgula calcula dois ou mais operandos da esquerda para a direita e retorna o valor do último operando.
Você pode sentir o seguinte código:
A cópia do código é a seguinte:
alerta ((0, 9));
alerta ((9, 0));
if (0,9) alerta ("ok");
if (9,0) alerta ("ok");
Qual é o papel dos operadores de vírgula no código real?
1. Variáveis de troca sem uma terceira variável
A cópia do código é a seguinte:
var a = "a", b = "b";
// Método 1
a = [b] [b = a, 0];
// Método 2
a = [b, b = a] [0];
2. Simplifique o código
A cópia do código é a seguinte:
if (x) {
foo ();
barra de retorno ();
}
outro{
retornar 1;
}
Pode ser abreviado como:
A cópia do código é a seguinte:
retornar x? (foo (), bar ()): 1;