JavaScript del aprendizaje basado en la conversión de tipos -Número

JavaScript del aprendizaje basado en la conversión de tipos -Número

tipos de datos básicos
Number(true) // 1
Number(false) // 0
Number(undefined) // NaN
Number(null) // 0
Number('a') // NaN
Number('11') // 11
objetos

Objeto primero ser convertido a los tipos de datos básicos correspondientes, si el tipo de retorno no numérico, a continuación, de acuerdo con las reglas anteriores forzado a una digital,
método comprueba primero valueOf (), si y retorno al valor de tipo de base, se ve obligado por el valor la conversión
, si no, el uso toString () devuelve el valor del reparto
si ninguno valueOf () ni toString (), el error TypeError

  const a = {
      valueOf: function() {
        return '11';
      }
    },
    b = {
      toString: function() {
        return '11';
      }
    },
    c = {
      valueOf: function() {
        return { a: '1' };
      }
    },
    d = [1, 2];
  Number(a); // 11
  Number(b); // 11
  Number(c); // NaN
  Number(d); // NaN
  Number(e); // Uncaught TypeError: Cannot convert object to primitive value

Publicado 83 artículos originales · ganado elogios 21 · Vistas a 50000 +

Supongo que te gusta

Origin blog.csdn.net/JsongNeu/article/details/100672521
Recomendado
Clasificación