Articles of 解构

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

如何在JavaScript中解构对象时绑定方法? 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 我想要clogin控制台的“父”对象{getName: [Function]} 。 在一个解构行中解构一个对象时,是否有办法绑定所有方法?

JS嵌套对象中的解构对象

我如何处理解构可能有一个未定义的内部对象的嵌套对象? 例如。 我有一个xhr req返回{person: user: {}} 例如: const xhrResponse = {person: user: 'hi'}} 我只对用户部分感兴趣,所以我毁了。 const {person: {user}} = xhrResponse console.log(user) => 'hi' 但是,如果api返回{person: null} 我的解构失败, Cannot match against 'undefined' or 'null'. 我有一个解决scheme,但我觉得可能有一个更优雅的解决scheme。 解 const handleResponse(res) => res.person ? res : {person: user: {}} 有没有更好的方法来处理这个问题? 或者甚至另一种说法,更好地使用这个词有时是意见的同义词:D 更完整的使用案例: $q.all([somePromise, someOtherPromise, getPersonPromise]) .then(promises => [vm.promise1, vm.promise2, {person: {user: […]

函数调用中的解构赋值,同时保留对象

有没有办法做下面的事情? f = (o:{a:x}) { console.log(o); console.log(x); } f({a:0}); //Should Print: //{a:0} //0 获得与此相同的结果。 f = function(o) { var {a:x} = o; console.log(o); console.log(x); } f({a:0}); //Prints //{a:0} //0 我想在parsing函数参数中的对象的同时也将对象传递给函数,以便对象可以被修改。

在Node.JS中解构

这个最近的video声称,EMCAScript 6解构已经部分在Node.JS中实现。 我已经尝试了各种示例(使用v0.10.12和–harmony标志),如 var [a, b] = [1, 2]; 和 var {a: a, b: b} = {a: 1, b: 2}; 无济于事。 这张票似乎表明解构还没有在V8中得到支持。 Node.JS中的解构是否部分实现? 什么是我可以玩的代码片段?