Array.of()-ES6对数组扩展二

Array.of() 方法创建一个具有可变数量参数的新数组实例,而不考虑参数的数量或类型。

1.Array.of()

例如🌰:

Array.of() 
// []
Array.of(7); 
// [7] 
Array.of(1, 2, 3); 
// [1, 2, 3]
2.Array.of()与Array()
Array()
 // []
Array(3) 
// [, , ,]
// [empty × 3]
Array(3, 11, 8) // [3, 11, 8]

Array.of(3) 创建一个具有单个元素 3 的数组,而 Array(3) 创建一个长度为3的空数组(注意:这是指一个有3个空位的数组,而不是由3个undefined组成的数组,空位有自己的位置,但是这个位置的值是未定义,即这个值是不存在的。如果一定要读取,结果就是undefined,因为undefined在JavaScript语言中表示不存在)。
Array.of()可以弥补数组构造函数Array()的不足,基本上可以用来替代Array()或new Array(),并且不存在由于参数不同而导致的重载。它的行为非常统一

3.Array.of()的同等实现
function ArrayOf(){
  return [].slice.call(arguments);
}
if (!Array.of) {
  Array.of = function() {
    return Array.prototype.slice.call(arguments);
  };
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。