我有这个带有函数的代码,其中我试图定义一个 array
然后在下一行推送到它:
function Spot(value) {
this.x = null;
this.y = null;
this.values = [];
this.values.push(value);
}
我试过这个:
this.values = [].push(value);
和
this.values = (this.values || []).push(value);
但是失败了。是不是代码有问题……
原文由 popeye 发布,翻译遵循 CC BY-SA 4.0 许可协议
您缺少数组初始化语法:
在您的情况下,这将是:
更多信息在这里: https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array
编码:
看起来它应该生成一个数组并将值推送给它。它确实创建了数组,但是数组没有返回到
x
,返回了数组的新长度,即1
。https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/push
如评论中所述,更接近您最初尝试的替代方案是:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/concat