La coacción en JavaScript

Aquí, vamos a aprender el La coacción en JavaScript y entender que el uso de escenarios class.

Vamos a hablar de La coacción en JavaScript , es una palabra bocado pero aún así, mucha gente no sabe sobre él incluso un coerción . Así lo que es la coacción en el contexto de JS , mi respuesta será que, a veces el JavaScript quiere a la persona más inteligente en la sala, a veces es ya veces no lo es? JavaScript intenta predecir y hacer algo Case que, a veces lo hace a la perfección y, a veces no es capaz de hacerlo tan perfectamente lo que tenemos que tener en cuenta que el código JavaScript puede hacer un lío y donde puede hacer predicciones (por predicción no nos referimos El aprendizaje automático o AI). JavaScript intenta convertirse en inteligente y tratar de hacer algo for nosotros, pero no queremos que haga. Así que es mejor para entender cómo JavaScript predecirá estas cosas a nuestro favor.

for 1:

Echemos un vistazo algunos ejemplos …

Ejemplo 1:

console.log('5' - 5);

salida

Coercion in JavaScript - 4

Así que parece que JavaScript interpretar ‘5’ como un entero en lugar de una cadena. Se producesan de salida de 0. Bueno, esto es muy útil (gracias JavaScript).

Ejemplo 2:

console.log('5' + 5);

partir del ejemplo 1 podemos adivinar su salida sea 6, ¿verdad? Bueno no..!

salida

Coercion in JavaScript - 5

La salida es 55, que claramente no es 6 así que lo que ha pasado aquí? JavaScript tomó 5 como una cadena y concatenar como 55.

Como prueba echar un vistazo en la siguiente fragmento de código [ fragmento de código 1 ]:

console.log(typeof('5' - 5));
console.log(typeof('5' + 5))

salida

Coercion in JavaScript - 6

typeof : Este typeof función devuelve el tipo de la entidad pasado como parámetro.

Ahora bien, esta es la coacción, en JavaScript, tenemos tres tipos de coacción, con:

  1. números
  2. cadenas
  3. Case

class 2:

Así que la idea es que nunca se debe permitir JavaScript para predecir Boolean que si quieres dar lugar a números de seguro que es un entero o Case, y si quieres cadena continuación, asegúrese de que es la cadena correctamente, de lo contrario estas cosas generará errores que son básicamente error lógico y no pueden ser identificados por JS.

Ahora hay una cosa en la coacción, veamos otro ejemplo [ejemplo 3]:

const add = true + 10
console.log(add);

Si hago una variable constante complemento donde agrego ’10’ con ‘verdadera’ (I sé que es extraño, digamos que es un poco de escenario de uso for),

salida

Coercion in JavaScript - 7

Ahora la salida se ’11’ , JavaScript tratado verdaderamente como un literal , que es cierto, por supuesto. Ahora float falsas , veamos un ejemplo [Ejemplo 4]:

const add = false + 10
console.log(add);

salida

Coercion in JavaScript - 8

Ahora bien, es obvio que falsa Tienes valor literal ‘cero’.

En JavaScript ‘verdadero’ es tratado como uno y ‘false’ como cero.

class 3:

Ahora voy a explicar más de la coacción usando un escenario de uso class:

[fragmento de código 2]:

const loginDetails = []     //line 1
const loginID =loginDetails[0] //line 2
if(loginID !== undefined) { //line 3
console.log('Allow user Login');
}else{ //line 4
console.log('Auth failed');
}

Digamos que queremos credenciales de acceso de un usuario a partir de una base de datos y almacenado en loginDeatails que por lo general que recibimos en un formato de matriz (que está en la línea 1). Normalmente obtenemos datos de acceso en la primera posición (o simplemente asumir) así que guardó en loginid en la línea 2. Para comprobar si tenemos éxito nos registramos si loginid es si indefinido o no (línea 3). Puede predecir su salida?

salida

Coercion in JavaScript - 9

Es obvio que no tenemos ningún dato dentro loginid .

[fragmento de código 3]:

const loginDetails = []
const loginID =loginDetails[0]
if(loginID) { //line 1
console.log('Allow user Login');
}else{
console.log('Auth failed');
}

Fragmento de código 3 es similar a fragmento de código 2 simplemente con una diferencia en la línea 1 de fragmento de código 3 (la misma línea es la línea 3 en fragmento 2). Ahora de nuevo si corremos obtendremos una “autenticación falló” de salida para loginid se considere falsa (porque fue definido).

Ahora bien, ¿cuáles son las cosas que JavaScript tomo como falsa? Bueno, ellos son:

  1. falsa
  2. 0 (cero)
  3. (cadena vacía y sin espacios, de lo contrario, incluso un solo espacio o cualquier interior testigo será verdad)
  4. class
  5. indefinido

Aparte de estos todo lo demás es cierto .

Eso es todo en coerción que es un poco complicado.


Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *