当前位置: 首页 > 面试题库 >

如何将相同元素添加到javascript数组n次

南宫凯康
2023-03-14
问题内容
var fruits = [];
fruits.push("lemon", "lemon", "lemon", "lemon");

而不是推送相同的元素,怎么可以这样写一次:

fruits.push("lemon" * 4 times)

问题答案:

对于基元,使用.fill

var fruits = new Array(4).fill('Lemon');

console.log(fruits);

对于非基本fill元素,请不要使用,因为数组中的所有元素都将引用内存中的同一对象,因此对数组中一项的更改会影响数组中的每一项。

const fruits = new Array(4).fill({ Lemon: 'Lemon' });



fruits[0].Apple = 'Apple';

console.log(JSON.stringify(fruits));





// The above doesn't work for the same reason that the below doesn't work:

// there's only a single object in memory



const obj = { Lemon: 'Lemon' };



const fruits2 = [];

fruits2.push(obj);

fruits2.push(obj);

fruits2.push(obj);

fruits2.push(obj);



fruits2[0].Apple = 'Apple';

console.log(JSON.stringify(fruits2));

相反,可以在每次迭代中显式创建对象,可以使用以下方法完成Array.from

var fruits = Array.from(

  { length: 4 },

  () => ({ Lemon: 'Lemon' })

);

console.log(fruits);

有关如何以这种方式创建2D数组的示例:

var fruits = Array.from(

  { length: 2 }, // outer array length

  () => Array.from(

    { length: 3 }, // inner array length

    () => ({ Lemon: 'Lemon' })

  )

);

console.log(fruits);


 类似资料:
  • 问题内容: 如果我在PHP中定义了一个数组,例如(我没有定义其大小): 我是否可以使用以下内容简单地添加元素? PHP中的数组没有add方法,例如? 问题答案: 您所描述的两种方法都可以。 是相同的:

  • 各位!我刚刚开始学习wift,如果这个问题很愚蠢,我很抱歉。我想使用循环向数组“uu”添加值。然而每次它都会覆盖“uu”。 请帮忙,谢谢! 我的代码

  • 我想给数组的每个元素添加相同的值。我的方法是使用default添加值。它与这个有一点不同,因为:我不知道如何写入数组的现有元素,而不是新元素。 输入: 提前感谢!

  • 问题内容: 我有一个已经有一个类的元素: 现在,我想创建一个JavaScript函数,将一个类添加到(不是替换,而是添加)。 我怎样才能做到这一点? 问题答案: 使用element.classList.add添加一个类: 然后element.classList.remove删除一个类: 如果需要支持Internet Explorer 9或更低版本: 在元素的属性中添加一个空格以及新类的名称。首先,

  • 我试图向数组中添加一个元组(例如,2项元组)。 我得到的是: 找不到接受提供的参数的“=”的重载 提示:我试图超载每个参考书的=: ...但是没有弄对。 有什么想法吗。。。解决方案

  • 本文向大家介绍在PHP中,如何将对象元素添加到数组?,包括了在PHP中,如何将对象元素添加到数组?的使用技巧和注意事项,需要的朋友参考一下 代码如下- 示例 输出结果 这将产生以下输出- 创建对象,然后将其推到数组的末尾(以前存在)。 另类