Array.prototype鲜为人知的事实

Posted 林丶易

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Array.prototype鲜为人知的事实相关的知识,希望对你有一定的参考价值。

// constructor 属性是每个具有原型的对象的原型成员。
// 这包括除 Global 和 Math 对象之外的所有内部 javascript 对象。
// constructor 属性包含了对某种函数的引用,此种函数构造了特定对象的实例。
var arr = new Array();
 
if (arr.constructor == Array)
document.write("Object is an Array.");
else
document.write("Object is not an Array.");
// Object is an Array.

// length 是Array的实例属性。返回或设置一个数组中的元素个数。该值是一个无符号 32-bit 整数,并且总是大于数组最高项的下标。
var items = [‘shoes‘, ‘shirts‘, ‘socks‘, ‘sweaters‘];
items.length;
// 返回 4
// Array.isArray() 用于确定传递的值是否是一个 Array。

// 下面的函数调用都返回 true
Array.isArray([]);
Array.isArray([1]);
Array.isArray(new Array());
// 鲜为人知的事实:其实 Array.prototype 也是一个数组。
Array.isArray(Array.prototype);

// 下面的函数调用都返回 false
Array.isArray();
Array.isArray({});
Array.isArray(null);
Array.isArray(undefined);
Array.isArray(17);
Array.isArray(‘Array‘);
Array.isArray(true);
Array.isArray(false);
Array.isArray({ __proto__: Array.prototype });


// Array.prototype[@@unscopables]待验证

// Array.from() 方法从一个类似数组或可迭代对象中创建一个新的数组实例。
Array.from("asjkdhajk")//["a", "s", "j", "k", "d", "h", "a", "j", "k"]

 
// Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。
Array(7)//[7个undefined]
Array.of(7)//[7]
console.log(Array.of("asiudhuia"));//["asiudhuia"]
玩了一下Array的一些方法,发现一条官方写着鲜为人知的事实,哈哈哈哈哈,我要告诉全世界。23333~~~~

 








以上是关于Array.prototype鲜为人知的事实的主要内容,如果未能解决你的问题,请参考以下文章

为人口增长立方体设计 Olap 立方体维度和事实

为人处世事实判断和价值判断皆不可少--人类认识客观事物的标尺:对错与利弊

Array.prototype.includes 与 Array.prototype.indexOf

js一些小技巧,关于Array.prototype.push,Array.prototype.slice的用法

Array 和 Array.prototype

Array.prototype.slice.call(array, 0) 有啥用?