1. 最简单粗暴的方法:for循环数组
var arr = []; for(var n=0; n<10; n++){ arr[n] = 0; }
2. 用ES6中的fill()方法app
var arr = new Array(10).fill(0);
3.使用Uint8Array()方法spa
//生成8位无符号整数值的类型化数组,内容将初始化为0。 var arr = new Uint8Array(10);
4. Array与String中的反复横跳prototype
var arr = new Array(10+1).join('0').split('');
可是生成的是"0"组成的数组3d
5.无用的方法:使用数组对象的map()方法code
var arr = new Array(10); arr.map(item=>{ return 0; }); // 这样只能获得一个length=10,但没有元素的数组;map不能对没有元素的item进行操做
该方法会获得:对象
若是非得用的话:blog
var arr = Array.apply(null, Array(5)).map(Number.prototype.valueOf,0);
(另,若是判断是否为全0数组,迭代方法就比较香了,如it
var arr = [0,0,0,0,0]; var isZeroArray = !arr.some(item => item!==0); // ture则表示arr是全0数组