5 formas de juzgar el tipo de datos

1. typeof

  • Puede determinar el tipo de datos, devuelve una cadena que representa el tipo de datos (el resultado devuelto solo puede incluir número, booleano, cadena, función, objeto, indefinido);
  • Puede usar typeof para determinar si existe una variable (como if (typeof a! = "Undefined") {...});
  • El problema con el operador Typeof es que devuelve el objeto sin importar de qué tipo sea el objeto referenciado
typeof {} // object 
typeof   [1,2] // object 
typeof / \ s / // object

2.instancia de

El principio es porque una instancia de B puede determinar si A es una instancia de B y devuelve un valor booleano. El tipo de datos viene determinado por el tipo de construcción.

console.log (arr instanceof Array); // true 
console.log (date instanceof Date); // true 
console.log (fn instanceof Function); // true 
// Nota: la instancia de debe ir seguida del tipo de objeto, no del caso Incorrecto, este método intenta alguna selección condicional o rama

3. Juzgue por el método toString.call () en Object

Object.prototype.toString.call (); 
console.log (toString.call ( 123)); // [Número de objeto] 
console.log (toString.call ('123')); // [Cadena de objetos] 
console.log (toString.call (undefined)); // [objeto no definido] 
console.log (toString.call ( true )); // [objeto booleano] 
console.log (toString.call ({})); // [objeto Objeto] 
console.log (toString.call ([])); // [matriz de objetos] 
console.log (toString.call ( function () {})); // [función de objeto]

4. A juzgar por el constructor del objeto.

console.log ('数据 类型 判断' -   constructor); 
console.log (arr.constructor === Array); // true 
console.log (date.constructor === Date); // true 
console.log (fn.constructor === Function); // verdadero

5. Método JQ para determinar el tipo de datos

jQuery proporciona una serie de métodos de herramienta para determinar el tipo de datos para compensar las deficiencias del operador typeof nativo de JavaScript. El siguiente método juzga el parámetro y devuelve un valor booleano.
jQuery.isArray (); si es una matriz
jQuery.isEmptyObject (); si es un objeto vacío (sin propiedades enumerables).
jQuery.isFunction (): si es una función
jQuery.isNumberic (): si es un número
jQuery.isPlainObject (): si es un objeto generado usando "{}" o "nuevo Objeto", no un objeto provisto de forma nativa por el navegador.
jQuery.isWindow (): si es un objeto de ventana;
jQuery.isXMLDoc (): determina si un nodo DOM está en un documento XML.


Autor: 8d2855a6c5d0
enlace: https: //www.jianshu.com/p/967d6db70437
Fuente: libros de Jane

Supongo que te gusta

Origin www.cnblogs.com/passkey/p/12757589.html
Recomendado
Clasificación