javascript逗号运算符(,)计算其每个操作数(从左到右),并返回最后一个操作数的值。这样可以创建一个复合表达式,其中对多个表达式求值,复合表达式的最终值是其最右侧成员表达式的值。通常用于为for循环提供多个参数。如下:
for (let i = 0, j = 9; i <= 9; i++, j--) {
console.log(`a[${i}][${j}] = ${a[i][j]}`);
}
备注一,其它用法如(0, ...)或(0, obj.prop)()说明:
1、说明,作用就是使得在prop这个方法里无法获取this, 从而无法对类中的其他变量或方法做操作。本质上是解除绑定(bind)使this在方法的范围内。
2、用法,相当于如下函数调用语句:
var func = obj.prop;
func();
3、比较如下语句,加强理解:
obj.prop(); //这是一个方法调用, prop方法里可以获取到this
var func = obj.prop;
func(); //这是一个函数调用
(0, obj.prop)(); //这是一个函数调用, 在方法调用前放一个逗号(,), 会使得js解引用, 从而从方法调用变成函数调用。
备注二,(0,o.default)((0,r.default)(d))可以变形为o.default(r.default(d))。其中(0,o.default)返回的是 o.default;(0,r.default)返回的是r.default。