我可以在保留该论点引用的同时解构一个论点吗?

时间:2019-07-16 18:53:12

标签: javascript arguments destructuring

function foo({asdf: {a1, a2}, jkl}) {
  document.body.textContent = `
    asdf.a1 = ${a1},
    jkl = ${jkl},
  `
}

foo({asdf: {a1: 5, a2: 6, a3: 7}, jkl: 8})

好破坏力。 a1a2jkl被带到函数的作用域范围内。

但是我仍然引用整个asdf吗?

function foo({asdf: {a1, a2}, jkl}) {
  document.body.textContent = `
    asdf.a1 = ${a1},
    jkl = ${jkl},
    asdf.a3 = ${asdf.a3}
  `
}

foo({asdf: {a1: 5, a2: 6, a3: 7}, jkl: 8})

现在我得到ReferenceError: asdf is not defined。显然,在将asdf分解为{a1, a2}的过程中,我丢失了对asdf的引用!

是否可以以仍然保留对整个参数的引用的方式来破坏参数?

0 个答案:

没有答案