ES6:连女朋友看了都喜欢的小知识-解构默认赋值,剩余参数

5,010 阅读1分钟

image.png 大家好,我是林三心,又来分享一些ES6的小知识了,今天分享的是 “解构默认赋值” 以及 “剩余参数” 。接着往下看呗!!!

解构赋值中如何给一个变量赋默认值?

let [ a, b = 1 ] = [ '林三心' ]
console.log(a, b) // a = '林三心'  b = 1

let [ a, b = 1 ] = [ '林三心', undefined ]
console.log(a, b) // a = '林三心'  b = 1

let [ a, b = 1 ] = [ '林三心', '林三心' ]
console.log(a, b) // a = '林三心'  b = '林三心'

let [ a, b = 1 ] = [ '林三心', null ]
console.log(a, b) // a = '林三心'  b = null

结论:当解构变量对应的数组元素是undefined且解构变量拥有默认值时,该变量等于默认值,如果对应的元素非undefined,则该变量等于对应的元素

函数的剩余参数

普通函数

function test (a, ...params) { 
    console.log(a)
    console.log(params)
 }

test(1) // 1 []
test(1, 2, 3, 4, 5) // 1 [2, 3, 4, 5]

箭头函数

let test = (...params) => { // 解决了箭头函数内部无argument对象的问题
    console.log(params)
}

test(1, 2, 3, 4, 5) // [1, 2, 3, 4, 5]

加油!会有女朋友的!!!