代码
var cool = new Array(3);
cool[setAll] = 42; //cool[setAll] is just a pseudo selector..
alert(cool);
结果
一条警告信息:
42,42,42
如何将数组的所有值更改/设置为特定值?
原文由 Tomkay 发布,翻译遵循 CC BY-SA 4.0 许可协议
代码
var cool = new Array(3);
cool[setAll] = 42; //cool[setAll] is just a pseudo selector..
alert(cool);
结果
一条警告信息:
42,42,42
如何将数组的所有值更改/设置为特定值?
原文由 Tomkay 发布,翻译遵循 CC BY-SA 4.0 许可协议
ES6 方法非常干净。所以首先你初始化一个 x 长度的数组,然后在它上面调用 fill
方法。
let arr = new Array(3).fill(9)
这将创建一个包含 3 个元素的数组,例如:
[9, 9, 9]
原文由 Faris Zacina 发布,翻译遵循 CC BY-SA 3.0 许可协议
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答897 阅读✓ 已解决
6 回答1.1k 阅读
2 回答1.3k 阅读✓ 已解决
没有内置方法,您必须遍历所有方法:
http://jsfiddle.net/alnitak/xG88A/
如果您 真的 想要,请执行以下操作:
然后你实际上可以做
cool.setAll(42)
(见 http://jsfiddle.net/alnitak/ee3hb/ )。不过,有些人不赞成扩展内置类型的原型。
EDIT ES5引入了一种安全扩展
Object.prototype
和Array.prototype
而不破坏for ... in ...
枚举的方法:编辑 2 在 ES6 草案中现在也有
Array.prototype.fill
用法cool.fill(42)