Comprensión profunda de && y en JS ||

https://www.cnblogs.com/guanghe/p/11157201.html
Escribí tantos JS, solo para descubrir que la gramática de JS pertenece a la familia de lenguajes C, y es bastante diferente de algunas partes del lenguaje C general lenguaje de programación de lenguaje. Entre ellos && y || son un ejemplo.

&& y || en la
  familia de lenguajes C tienen una característica, no importa lo que escriba la expresión en un lío, devolverá un valor booleano.

1 , &&

Cuando ambas condiciones son verdaderas, el resultado es verdadero;

Si uno es falso, el resultado es falso;

Cuando la primera condición es falsa, las siguientes condiciones ya no se juzgan;

Nota: Cuando el valor participa en la operación lógica AND, el resultado es verdadero, entonces se devolverá el segundo valor verdadero; si el resultado es falso, se devolverá el primer valor falso.

2 , ||

Siempre que una condición sea verdadera, el resultado es verdadero;

Cuando ambas condiciones son falsas, el resultado es falso;

Cuando una condición es verdadera, las siguientes condiciones ya no se juzgan;

Nota: Cuando el valor participa en la operación lógica OR, el resultado es verdadero y se devolverá el primer valor que sea verdadero, si el resultado es falso, se devolverá el segundo valor que sea falso;

El && y ||
en JS 1, el && y || en JS, cuando aparecen en sentencias de juicio condicional, como si, seguirán las reglas del lenguaje C.

2. El && y || en JS, cuando estaban originalmente en la instrucción de asignación, como asignación de variable, resultado de retorno, etc., seguirán las siguientes reglas:

Expresión a && Expresión b: Calcula el resultado de la expresión a (o función),
si es Verdadero, ejecuta la expresión b (o función) y devuelve el resultado de b;
si es Falso, devuelve el resultado de a;

Expresión a || expresión b: calcula el resultado de la expresión a (o función),
si es Fasle, ejecuta la expresión b (o función) y devuelve el resultado de b;
si es Verdadero, devuelve el resultado de a ;

Ejemplo 1:

1 sea b, c, d;
2 b = verdadero || 0; // b = verdadero;
3 c = falso || 0; // c = 0;
4 d = 1 || 0; // d = 1;
例 2 :

1 // Cambia los miembros con valor booleano falso en la matriz a 0
2 Array.from ([1 ,, 2 ,, 3], (n) => n || 0)
3 // [1, 0, 2 , 0, 3]

Supongo que te gusta

Origin blog.csdn.net/s8806479/article/details/104647635
Recomendado
Clasificación