快速将简单值推入数组

我希望能够在不使用变量的情况下动态创建仅包含一个值的数组。这适用于变量:

var arr = [];
arr.push('test');
console.log(arr); // correctly logs ["test"]

但这不是:

console.log([].push('test')); // logs 1

Why does this log 1 instead of ["test"]? Is this coerced into a boolean?

评论
刺眼旳情侣
刺眼旳情侣

你为什么不这样做呢?

["test"]

如前所述,push返回长度,因此您在此处记录长度。

点赞
评论
哼~
哼~

Array.prototype.push returns the new length of the array, not the pushed item.

点赞
评论
小哥
小哥

Array.prototype.push()

The push() method adds one or more elements to the end of an array and returns the new length of the array.

点赞
评论