ES6擴展運算符和rest運算符


(1)對象擴展運算符

let arr1 = [ 'www', 'baidu', 'com']

let arr2= arra1

arr2.push( 'js' )

console.log(arr2) // [ 'www', 'baidu', 'com' ]

console.log(arr1) // [ 'www', 'baidu', 'com', 'js']

當在arr2中push一個值時,arr1也會被改變,因為並沒有在內存中重新開辟一個空間,只是映射了一個arr2,所以arr1同時被改變

 

為了使arr1不被改變,可以使用 ... 運算符

let arr1 = [ 'www', 'baidu', 'com']

let arr2= [ ...arr1 ] // 將arr1的內容賦值給arr2

arr2.push( 'js' )

console.log(arr2) // [ 'www', 'baidu', 'com' ]

console.log(arr1) // [ 'www', 'baidu', 'com']

 

(2)rest 運算符 rest是剩余的意思

當傳入的參數不確定時,使用rest運算符

function js(first,...arg) {

  console.log(first) // 0

  console.log(arg.length) // 7

  取出arg中的每一個值

  for (let val of arg) {

    console.log(val)

  }

}

js (0,1,2,3,4,5,6,7)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM