解构参数并保留对它的引用

destructure a parameter and keep reference to it too

本文关键字:引用 保留 参数      更新时间:2023-09-26

ES6 中有没有办法解构参数并按名称引用它?

myfunction(myparam) {
    const {myprop} = myparam;
    ...
}

这可以在函数参数列表中的一行中完成吗?类似于 Haskell 在模式匹配方面的@

对此没有语法支持。我想你可以用这样的东西来解决这个问题:

const myFunction = (function() {
  function myFunction(myparam, {myprop}) {
    // ...
  }
  return function(myparam) {
    return myFunction(myparam, myparam);
  };
}());

甚至

function myFunction(myparam, {myprop}=myparam) {
  // ...
}

但两者都可能被认为太笨拙了。