一尘不染

如何在 JavaScript 中将对象(例如字符串或数字)附加到数组中?

javascript

如何在 JavaScript 中将对象(例如字符串或数字)附加到数组中?


阅读 270

收藏
2022-01-25

共2个答案

一尘不染

使用该Array.prototype.push方法将值附加到数组的末尾:

// initialize array
var arr = [
  "Hi",
  "Hello",
  "Bonjour"
];

// append new value to the array
arr.push("Hola");

console.log(arr);

您可以使用该push()函数在一次调用中将多个值附加到数组:

// initialize array
var arr = ["Hi", "Hello", "Bonjour", "Hola"];

// append multiple values to the array
arr.push("Salut", "Hey");

// display all values
for (var i = 0; i < arr.length; i++) {
  console.log(arr[i]);
}

更新

如果要将一个数组的项目添加到另一个数组,可以使用firstArray.concat(secondArray)

var arr = [
  "apple",
  "banana",
  "cherry"
];

// Do not forget to assign the result as, unlike push, concat does not change the existing array
arr = arr.concat([
  "dragonfruit",
  "elderberry",
  "fig"
]);

console.log(arr);

更新

如果您想将任何值添加到数组的开头(即第一个索引),那么您可以将Array.prototype.unshift其用于此目的。

var arr = [1, 2, 3];
arr.unshift(0);
console.log(arr);

它还支持一次附加多个值,就像push.


更新

ES6语法的另一种方法是使用扩展语法返回一个新数组。这使原始数组保持不变,但返回一个带有新项的新数组,符合函数式编程的精神。

const arr = [
  "Hi",
  "Hello",
  "Bonjour",
];

const newArr = [
  ...arr,
  "Salut",
];

console.log(newArr);
2022-01-25
一尘不染

如果您只附加一个变量,那么push()就可以了。如果您需要附加另一个数组,请使用concat()

var ar1 = [1, 2, 3];
var ar2 = [4, 5, 6];

var ar3 = ar1.concat(ar2);

alert(ar1);
alert(ar2);
alert(ar3);

除非重新分配,否则concat 不会影响ar1ar2例如:

var ar1 = [1, 2, 3];
var ar2 = [4, 5, 6];

ar1 = ar1.concat(ar2);
alert(ar1);

有很多关于JavaScript Reference的重要信息。

2022-01-25