let { bar, foo } = { foo: ‘aaa‘, bar: ‘bbb‘ }; foo // "aaa" bar // "bbb" let { ba } = { foo: ‘aaa‘, bar: ‘bbb‘ }; ba // undefined
let { foo: ba } = { foo: ‘aaa‘, bar: ‘bbb‘ }; ba // "aaa" foo // error: foo is not defined
var {x = 3} = {}; x // 3 var {x, y = 5} = {x: 1}; x // 1 y // 5 var {x: y = 3} = {}; y // 3 var {x: y = 3} = {x: 5}; y // 5 var { message: msg = ‘Something went wrong‘ } = {}; msg // "Something went wrong" var {x = 3} = {x: undefined}; x // 3 var {x = 3} = {x: null}; x // null
let arr = [1, 2, 3]; let {0 : first, [arr.length - 1] : last} = arr; first // 1 last // 3