javascript - 在 JavaScript 中解构对象时如何绑定(bind)方法?

标签 javascript node.js ecmascript-6 this destructuring

在 JavaScript 中解构对象时如何绑定(bind)方法?

const person = {
  getName: function() {
    console.log(this);
  }
};

var a = person.getName;
var b = person.getName.bind(person);
var {getName: c} = person;

person.getName(); //=> {getName: [Function]}
a();              //=> window or global
b();              //=> {getName: [Function]}
c();              //=> window or global

我希望 c 在控制台中登录它的“父”对象 {getName: [函数]}.

在一行解构中解构对象时,有什么方法可以绑定(bind)所有方法吗?

最佳答案

不,没有办法。从对象中分离出来的函数失去了原来的上下文。 JavaScript 中的析构没有语法来动态处理提取的值。

关于javascript - 在 JavaScript 中解构对象时如何绑定(bind)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45910018/

相关文章:

javascript - 使用 jQuery 迭代数组来创建链接

javascript - jQuery Reel 插件动态加载卷轴图像

javascript - 从数组对象中删除所有标签和样式

javascript - js-xlsx - 获取特定行的 excel 表

javascript - 如何重写类箭头函数方法

javascript - react 条件渲染

javascript - Node.js:HTTP 获取请求

javascript - 异步流畅的 javascript (node) 接口(interface)(使用 deferreds)

javascript - 使中间参数可选的惯用方法

javascript - 如何查找对象数组中特定键是否为真