Try   HackMD

JavaScript - 陣列的複製的方法

1.利用傳統的 for loop 完成

var a = [100, 6, 29, 24, 66, 7, 28, 35, 87] var b = []
  • 用 for loop
for (let i = 0; i < a.length; i++) { b.push(a[i]) }
  • 用 for in (取的是 name)
for (let i in a) { b.push(a[i]) }
  • 用 forEach
a.forEach((v) => b.push(v))
  • 用 for of (取的是 value)
for (let v of a) { b.push(v) }

2.利用映射 map() 幫忙

  • 對陣列所有元素做+1
var a = [100, 6, 29, 24, 66, 7, 28, 35, 87] var b = a.map(x => x + 1) // a 陣利內的元素全加1 console.log(b)
  • 如果對陣列所有元素都不做任何事情,就等同於複製陣列
var c = a.map(x => x) // 複製一份到 c 陣列 console.log(c)

3.利用 展開運算子

var a = [100, 6, 29, 24, 66, 7, 28, 35, 87] console.log(a) // [1,2,3,4] console.log(...a) // 1 2 3 4 var b = [...a]
tags: JavaScript