天天看點

[]的二義性

    先看一道題:

//a指派的是[undefined]
var a = [[1][1]];
      

   解釋過程:

var arr = [1];
//因為arr的長度為1,是以arr[1] == undefined
var a = [arr[1]];      

  明白了我們再來看個:

var a = [[1,2,3][2]];

//解析過程
var arr = [1,2,3];

//arr[2]為3
//是以就是[3]
var a = [arr[2]];      

   再來一個

var a = [
    ['A',1,2,3]
    ['B',2]
];

//解析過程
//漏掉逗号

['B',2] 被看成連續運算[2]
['A',1,2,3][2]  ===== > 2

var a = [2];