关于逗号运算符的应用无法理解,希望获得解答(0, function)(args)

我在看warriorjs(一个编程小游戏)的源码,其中
const { directory, level, time, yes } = (0, _parseArgs2.default)(args);
这段代码让我十分困惑,逗号运算符最终只会返回最右边的值,那么0的意义在哪里,作为表达式他也不能表达什么?
在搜索时,发现过去也有人提过一样的问题,不过没有得到解答,我就链接过来
react-redux源码中大面积使用逗号运算符的作用是什么?

希望有大佬能解开我心中的困惑,感谢!!!


牧羊人nacy
浏览 485回答 1
1回答

Smart猫小萌

个人理解:这个问题其实等价于(0, _parseArgs2.default)(args)和_parseArgs2.default(args)有什么区别?我的第一想法是和this有关。(0, _parseArgs2.default)(args)// 等价于let fun = (0, _parseArgs2.default)fun(args) 上面的代码片段执行的时候,函数里面的this在严格模式下等于undefined,非严格模式下等于window。_parseArgs2.default(args)上面的代码片段执行的时候,函数里面的this指向_parseArgs2;举例如下:Update:把代码放到js文件里面执行,没有报评论里面你说的错误:
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript