Array.of
撰写时间:2024-03-14
最新修订:2024-12-07
Array.of
静态方法。创建数组。可变长参数中的每个数值都成为数组元素。
原型
*[]of
- ... *elements
参数
- ...elements
- 用于创建数组的元素。
返回值
返回Array的一个实例。
说明
Array的静态方法of从可变长参数中提取每个数值作为数组元素来创建数组。
例子
直接指定数组元素的数值
类似于:
创建二维数组
实参若是数组,则可创建二维数组。
下面代码创建了数组最外层的元素数量为3的二维数组。
创建类似数组的对象
Array的静态方法of可用于创建类似数组的对象(array-like object),而不是数组。
注意,上面代码须满足3个条件:
- 第1个参数指向一个函数,例中为PlainConstructor。
- PlainConstructor存在
this
,不管是否隐藏的。这就是为何要调用Array.of.call
的原因。参见call的基本机制。 - 函数PlainConstructor是个构造器。
严格来讲,PlainConstructor应至少有一个构造参数,用于接收所生成数组元素的数量。但Array的of函数会自动设置所创建的对象的length的值,因此该参数甚至可以省略。
此外,上面的代码不能使用lambda格式,因为lambda是匿名函数但不是构造函数。
上面如果不使用Array.of.call
,则不是返回对象,而是返回数组,且数组第一个元素为函数。
当然,这里只停留于第一步,PlainConstructor里面什么代码都没有。而更强大的应用则需要对其细化。