1. 程式人生 > >javascript的Array用字串作下標的遍歷問題

javascript的Array用字串作下標的遍歷問題

      相信使用過javascript的朋友都知道Array這個東西,可以用數字以及字串作為下標。

     如var array = new Array();

               array[0] = "foo" ;

               array[1] = "ok" ;

               array[ "xx" ] = "bar" ;

    那麼問題來了,array.length 是多少呢?是2還是3呢?

    答案是: 2 

    也就是說,array.length 只記錄用數字做下標的元素長度。

    我們嘗試用for(var  i = 0 ; i < array.length ; i ++ )

                         {

                              console.log(array[ i ]);

                              //只會輸出

                             // foo

                             // ok

                         }

    也就是說用字串作為下標的元素用這種迴圈模式不會被訪問到,那麼用什麼方式

    才能把array["xx"]也遍歷了呢,用for(var   element   in  array)迴圈就可以把array["xx"]

    也訪問到了。