如何将多个零推送到已经存在的数组
How to push multiple zeros to an already existing array
我在此链接上找到了如何创建具有选定零数的数组。创建零填充 JavaScript 数组的最有效方法?
但我的问题是,假设我已经有一个数组
var a = ['hihi','haha']
如何在前两个元素后添加 12 个零?这样它就变成了:
a = ['hihi','haha',0,0,0,0,0,0,0,0,0,0,0,0];
我当然可以去
for(var i = 0; i < 12, i++){
a.push(0);
}
但是有没有单行方法?
a.push(6*[0]);
您可以使用
Array.prototype.concat()
和Array.prototype.fill()
- 创建大小为
12
的数组并使用Array.prototype.fill()
填充0
- 然后使用
Array.prototype.concat()
与现有数组连接
var a = ['hihi', 'haha'].concat(Array(12).fill(0));
document.write('<pre>' + JSON.stringify(a, null, 3) + '</pre>');
例如,
您可以使用链接答案中的解决方案来创建十二个零的数组,然后使用 Array.prototype.concat 函数创建所需的数组。
var zeroes = Array.apply(null, Array(12)).map(Number.prototype.valueOf, 0);
var laughters = ['hihi', 'haha'];
var combined = laughters.concat(zeroes);
function fillArray(value, len) {
if (len == 0) return [];
var a = [value];
while (a.length * 2 <= len) a = a.concat(a);
if (a.length < len) a = a.concat(a.slice(0, len - a.length));
return a;
}
它在每次迭代中将数组加倍,因此它可以创建一个非常大的数组,只需很少的迭代。
简而言之,使用您的数组并执行与您提到的答案的连接。
var a = ['hihi','haha'].concat(Array.apply(null, Array(12)).map(Number.prototype.valueOf,0);)
de 0 必须是 int 还是字符串?为什么要加 12 个零?到目前为止,您尝试了什么?
只是一个简单的例子,
var a = ['hi', 'ha'];
for(var i = 0; 14 > a.length; i++){
a.push(0);
}
相关文章:
- Javascript-如何读取json文件中的列并将其保存在Javascript数组中
- 用于检查数组中是否存在元素的javascript自定义方法
- 验证会话中是否存在对象's数组
- 检查数组中是否存在字符串值,并返回找到的数组值js
- underline-js:将键对象与数组键对象进行比较,如果存在,则移除现有的添加新的
- 查找数组's按属性不存在于另一个数组中的对象
- 为什么没有从数组中存在的对象中删除属性
- 在对象上迭代以验证它是否's键存在于数组中
- 使用JQuery检查数组的索引中是否存在字符串
- JavaScript对象中存在数组的问题
- 使用javascript/jquery从现有数组中创建一个新数组,该数组保存项目存在的次数
- undercore返回数组中对象的indes,其中单词存在于对象中的句子中
- 如何使用函数来确定 Javascript 数组中是否存在值
- 检查数组中是否存在数组
- Javascript 速记方法,如果存在数组元素,则为变量分配真/假
- 如何在jquery中检查json中是否存在数组
- 如何检查多维数组中是否存在数组键
- 如何在json数据中检查任何列值使用angular js是否存在数组/集合
- 检查参数中是否存在数组
- 如果存在数组的元素,则从 mongodb 集合中检索项目(meteor js)