这个javascript语法是什么意思?(0,_parseKey2.default)(某事)

Ale*_*xHv 13 javascript webpack

我在Webpack生成的libs中找到了这个符号,但我不明白它:

var a = (0, _parseKey2.default)(something)
Run Code Online (Sandbox Code Playgroud)

(0, _parseKey2.default)代表什么?我不记得在功能参数的其他地方括号之间看到那些昏迷分隔的表达式,所以也许我只是缺少一些简单的东西.

谢谢你的帮助.

geo*_*org 25

这是为了给出_parseKey2.default正确的this(或者更确切地说,根本没有this),即将其称为普通函数,而不是方法.考虑:

var p = {
    f : function() {
        console.log(this)
    },
    x : "foo"
};

p.f();      // { f: ... x: foo }
(p.f)();    // { f: ... x: foo }
(0, p.f)(); // implicit global this
Run Code Online (Sandbox Code Playgroud)

逗号表达式是一种更简洁的方法:

 var unbound = p.f;
 unbound();
Run Code Online (Sandbox Code Playgroud)

  • 更多[本文](http://www.2ality.com/2015/12/references.html). (9认同)