Array.from()

您所在的位置:网站首页 keys怎么读 Array.from()

Array.from()

2023-08-27 09:49| 来源: 网络整理| 查看: 265

Array.from() 可以通过以下方式来创建数组对象:

可迭代对象(例如 Map 和 Set 对象);或者,如果对象是不可迭代的, 类数组对象(带有 length 属性和索引元素的对象)。

Array.from() 绝不会创建稀疏数组。如果 arrayLike 对象缺少一些索引属性,那么这些属性在新数组中将是 undefined。

Array.from() 有一个可选的参数 mapFn,该参数允许你在创建数组时为每个元素执行一个函数,类似于 map()。更明确地说,Array.from(obj, mapFn, thisArg) 和 Array.from(obj).map(mapFn, thisArg) 具有相同的结果,只是它不会创建中间数组,并且 mapFn 仅接受两个参数(element、index),不接受数组,因为数组仍然在构建中。

备注: 此行为对于类型化数组更为重要,因为中间数组的值必须被截断,以适应相应的类型。Array.from() 的实现与 TypedArray.from() 具有相同的签名。

Array.from() 方法是一个通用的工厂方法。例如,如果一个数组类的子类继承 from() 方法,继承的 from() 方法将返回新的子类的实例,而不是数组的实例。事实上,this 值可以是任意的构造函数,只要该构造函数接受一个表示新数组长度的单个参数。当一个迭代器对象作为类数组传递时,不带参数调用构造函数;当传递类数组对象时,将携带类数组对象的规范化长度调用构造函数。迭代完成时,将再次设置最终的 length。如果 this 值并不是构造函数,则使用 Array 构造函数。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3