以下代码段通过混合括号和方括号来赋予某些值而没有任何错误,但大多数其他组合(例如方括号内的括号)完全不起作用。在数组初始化中混合圆括号和方括号
var myItems = [];
myItems[5] = ("A1", "B1", ["C1","C2","C3"]);
当我打印这些值时,它们在两个不同的浏览器中完全相同。
myItems[5]: C1,C2,C3
myItems[5][0]: C1
myItems[5][1]: C2
myItems[5][2]: C3
myItems[5][2][0]: C
myItems[5][2][1]: 3
myItems[5][2][2]: undefined
似乎只考虑方括号内的部分。这个结果是由JavaScript标准(ECMA-262)定义的吗?还是仅仅是解释器/引擎(我的案例中的Chrome和Firefox)在非法使用时所做的?
Here是我的小提琴。
编辑:我知道正确使用括号(我的小提琴已经有了它),但我问的结果是否是这样一个错误的使用确定性。由于我尝试过的口译员不会产生任何错误并给出相同的结果,所以我想知道这些结果是否由标准保证,并且/或者所有其他口译员是否也会这样做。
[有,你,[尝试,使用],[方括号]] –
是的,我知道这一点,但实际上我没有问到正确的用法是什么。 – ahmedus