關(guān)于數(shù)組添加值和訪問值的一些小問題
今天來看看關(guān)于數(shù)組方面的一些小問題磅叛,可能對你會有一些小小的幫助睦疫,當(dāng)然如果我有說錯的地方也歡迎指教道盏,畢竟我也是一個菜鳥莹菱。
arr["bbb"]="nor 1";
arr[-2]="nor 2";
console.log(arr); >> [1, 2, 3, bbb: "nor 1", -2: "nor 2"]
console.log(arr.bbb) >> "nor 1"</pre>
如果我們想往數(shù)組里面添加一個值移国,以[]的形式添加,如果寫的是負(fù)數(shù)或者字符串那么它是在數(shù)組的末尾添加道伟,并且它是以鍵值對的形式添加的迹缀,所以下次訪問這個值的時候可以使用點的形式訪問使碾,但是如果是數(shù)字必須通過[]訪問。
arr["bbb"]="nor 1";
console.log(arr); [1, 2, 3, bbb: "nor 1"]
console.log(arr[3]) undefined</pre>
如果通過字符串或者負(fù)數(shù)往數(shù)組里面添加一個值祝懂,那么下次訪問的時候也必須通過鍵值對形式訪問
arr["bbb"]="nor 1";
arr[-2]=222;
arr.push(4);
console.log(arr); >> [1, 2, 3, 4, bbb: "nor 1"]
console.log(arr.length); >> 4</pre>
值得注意的是通過字符串或者負(fù)數(shù)添加的值票摇,那個數(shù)組是不會添加它的長度的,并且使用這種方式來添加的永遠(yuǎn)會在數(shù)組的最后面砚蓬,因為我們使用push方法添加數(shù)字4的時候我們發(fā)現(xiàn)它并沒有把是添加到最后后面矢门,大家都知道push方法的將值添加到數(shù)組的末尾的。也許我們可以得出一個結(jié)論那就是數(shù)字和數(shù)字排列灰蛙,鍵值對與鍵值對排列颅和。
更新數(shù)組小問題。
num.push(4,3,5); >>返回值是添加的最后那個數(shù)也就是數(shù)字5
num.reverse(); >>數(shù)組倒序排列缕允,不是按照大小峡扩,是反過來
console.log(num) >>[5, 3, 4]</pre>
num[5,"a",0]="111"; >>["111"] 如果末尾寫的是0或者數(shù)組長度加1那么和正常情況一樣。
console.log(num);</pre>
num[5,"a",6]="111";
console.log(num); >>[6: "111"]</pre>
后面的會把前面的覆蓋障本,最后一位寫的索引不能大于數(shù)組長度+1教届,否則不管你寫的是不是數(shù)字都是通過鍵值對的方式添加,如果是負(fù)數(shù)也是一樣的驾霜。
a[10] = 10;
console.log(a); >>[10: 10]
console.log(a.length); >>11
console.log(a[0]); >>undefined
console.log(a[10]); >>10</pre>
如果數(shù)組的長度是0或者沒有你要添加的那個索引那么長案训,那么js會把之前的值全部設(shè)置成undefined,并且用鍵值對的形式添加的粪糙。