给定一个输入文件
import { a } from 'b';
function x () {
a()
}
Run Code Online (Sandbox Code Playgroud)
babel会把它编译成
'use strict';
var _b = require('b');
function x() {
(0, _b.a)();
}
Run Code Online (Sandbox Code Playgroud)
但在松散模式下编译时,函数调用输出为 _b.a();
我已经对添加逗号运算符的位置进行了一些研究,希望有一个解释它的注释.负责添加它的代码在这里.
我开始阅读JavaScript模式,一些代码让我困惑.
var global = (function () {
return this || (1, eval)('this');
}());
Run Code Online (Sandbox Code Playgroud)
这是我的问题:
Q1:
(1, eval) === eval?
为什么以及如何运作?
Q2:为什么不呢
var global = (function () {
return this || eval('this');
}());
Run Code Online (Sandbox Code Playgroud)
要么
var global = (function () {
return this;
}());
Run Code Online (Sandbox Code Playgroud)