方法一:使用for循環
var arr = ['tom', 'jerry']; var arr2 = [1, 2];
for(var i=0; i<arr2.length; i++){ arr.push(arr2[i]) } console.log(arr); // ['tom', 'jerry', 1, 2]
方法二:使用concat(),注意concat()方法生成了一個新的數組,並不改變原來的數組。
var arr = ['tom', 'jerry']; var arr2 = [1, 2]; var newArr = arr.concat(arr2); console.log(newArr); // ["tom", "jerry", 1, 2]
方法三: 使用apply劫持數組的push方法(推薦,apply具體使用方法參考MDN)
var arr = ['tom', 'jerry']; var arr2 = [1, 2]; arr.push.apply(arr, arr2); console.log(arr) // ["tom", "jerry", 1, 2]
方法四:使用es6中的 ‘點語法’ 擴展運算符(推薦)
var arr = ['tom', 'jerry']; var arr2 = [1, 2]; arr.push(...arr2); console.log(arr) // ["tom", "jerry", 1, 2]
備注:擴展運算符(...)
擴展運算符( spread )是三個點(...)。它好比 rest 參數的逆運算,將一個數組轉為用逗號分隔的參數序列。
console.log(1, ...[2, 3, 4], 5) // 1 2 3 4 5 [...document.querySelectorAll('div')] // [<div>, <div>, <div>]