標籤:javascript數組splice方法
1、node環境。
版本:
[[email protected] javascript]$ node -vv0.12.4[[email protected] javascript]$
例子如下:
[[email protected] javascript]$ node> var ss = [11,22]; var tt = [55,66];undefined> ss.splice(0,0,tt);console.log(ss.length);console.log(ss);3[ [ 55, 66 ], 11, 22 ]undefined>
2、網頁環境
var ss = [11,22];var tt = [55,66];ss.splice(0,0,tt);console.log(ss.length);console.log(ss);alert(ss);
控制台輸出:
3
Array [ Array[2], 11, 22 ]
網頁彈出內容:55,66,11,22。
3、java8環境
[[email protected] javascript]$ jjsjjs> var ss = [11,22]; var tt = [55,66];jjs> ss.splice(0,0,tt);jjs> println(ss);<shell>:1 ReferenceError: "println" is not definedjjs> print(ss);55,66,11,22jjs> jjs> print(ss.length);3jjs>
why。。。
其實,上面splice後的結果是一樣的,數組變成了多維陣列,上面結果中數組的長度是一樣的,意味著結果是正確的,不同的是不同的輸出方式(有的是輸出多維陣列的結構資訊,有的是格式化輸出的,多維陣列其實不存在,多維底層還是一維數組->c語言經驗)。
為什麼一個JavaScript數組splice方法,網頁環境、node環境、java8環境等不一樣呢