Registro de aprendizaje: matriz de juicio de JavaScript

1. instancia de

La explicación en MDN es : el operador instanceof se usa para detectar si constructor.prototype existe en la cadena de prototipos del objeto de parámetro.

La sintaxis es: objeto (un objeto de instancia) instancia de constructor (un constructor)

let arr = [1, 3];

console.log(arr instanceof Array);   // true
// 值得注意的是:Array是Object的子类,下面也会输出true
console.log(arr instanceof Object);  // true

2. constructor

La explicación en w3school es : el atributo constructor devuelve el constructor para crear este objeto.

La sintaxis es: object.constructor

let arr = [1, 3];

console.log(arr.constructor);           // ƒ Array() { [native code] }  指向Array
console.log(arr.constructor == Array);  // true

3. proto y prototipo

Explique que los objetos tienen atributos proto únicos y las funciones tienen atributos prototipo únicos. Al generar objetos, los atributos proto de los objetos apuntan a los atributos prototipo de la función.

Esto es juzgado por la cadena de prototipos.

let arr = [1, 3];

console.log(arr.__proto__ === Array.prototype);  // true

4. toString ()

La explicación en MDN es : cada objeto puede detectar el tipo de objeto a través de Object.prototype.toString (), debe llamarse en forma de Function.prototype.call () o Function.prototype.apply (), y el pase debe ser verificado. El objeto como primer parámetro se llama thisArg.

let arr = [1, 3];

console.log(Object.prototype.toString.call(arr));                        // "[object Array]"
console.log(Object.prototype.toString.call(arr) === "[object Array]");   // true
console.log(Object.prototype.toString.apply(arr) === "[object Array]");  // true

5.isPrototypeOf ()

También se juzga por la cadena de prototipos aquí para verificar si el Array está en la cadena de prototipos de arr.

let arr = [1, 3];

console.log(Array.prototype.isPrototypeOf(arr));   // true

6. isArray ()

La explicación en MDN es : Array.isArray () se usa para determinar si el valor pasado es una matriz.

Este es el método proporcionado por es6, que puede considerarse como el cuarto método encapsulado de toString ().


Gracias por leer, el artículo solo se usa como notas de estudio.

Supongo que te gusta

Origin blog.csdn.net/qq_37992222/article/details/112342597
Recomendado
Clasificación