像 exports.default = (0, _createHelper2.default)(pure, 'pure'
What the purpose of writing Javascript like exports.default = (0, _createHelper2.default)(pure, 'pure', 1)?
我发现一些库里有一些这样的表达式:
exports.default = (0, _createHelper2.default)(pure, 'pure', 1)
好像和_createHelper2.default(pure, 'pure', 1)
没有区别
那么这样写的目的是什么呢?
有一个很小的区别: 调用_createHelper2.default
时使用的this
值:
跟
exports.default = (0, _createHelper2.default)(pure, 'pure', 1)
_createHelper2.default
将在this
设置为全局对象(松散模式(或undefined
(严格模式(的情况下调用。
跟
_createHelper2.default(pure, 'pure', 1)
_createHelper2.default
将被调用,this
设置为 _createHelper2
。
(_createHelper2.default
是否实际看到用于调用的this
值取决于它是普通函数、绑定函数还是箭头函数的用途;但这就是调用它的区别。
exports.default = (0, _createHelper2.default)(pure, 'pure', 1)
的工作原理是使用逗号运算符获取没有关联属性信息的函数引用,然后不通过属性访问调用该函数,这绕过了通常的 this
设置。所以这就像这样做:
var f = _createHelper2.default;
exports.default = f(pure, 'pure', 1)
相关文章:
- Setting default onclick behavior for <img> tag in gene
- 使用 Pure JS 更改 HTML 标记名称
- 如何在事件处理程序的回调中防止Default
- 更改TogetherJS中的DEFAULT NAMES
- Gruntfile.js-找不到任务“default”
- 如何正确控制Angular指令的$dirty和$pure状态
- 像 exports.default = (0, _createHelper2.default)(pure, 'pure'
- consume salesforce chatter rest service from pure javascript
- Typescript class.default 不是构造函数
- Pure JavaScript alternative to jQuerys .find
- 正在default.aspx中调用jquery
- 如何在选项卡或浏览器以角度关闭时防止Default()
- 如何在default.aspx中包含外部jQuery文件
- Angularjs ng-show not working with checkbox with default val
- 在Meteor中使用fs模块获取Uncaught TypeError _fs2.default.readFile不是函数
- Pure Javascript Sandbox
- 调用$mdDialog(Angular Material)Confirmation而不是Default Javascri
- Pure JS to lodash
- Jquery ONE function PURE js
- 构建一个移动友好的浏览器游戏 - Pure JS,Jquery,Flash,Unity或WebGL