JavaScript unshift()

admin發表於2018-08-29

大家知道shift方法可以刪除陣列中的第一個元素,也就是索引為0的元素。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr = ["螞蟻部落",6,"青島市南區"];
console.log(arr.shift());
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/29/020029ic6i06cl86ikdi56.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

關於shift方法的更多用法可以參閱JavaScript shift()一章節。

unshift比shift前面多了一個"un",從英語語法的角度,它應該是shift的反義詞。

此方法功能上也體現了這一點,可以在陣列的開頭新增一個或者多個元素。

更多關於陣列內容可以參閱JavaScript Array 陣列一章節。

語法結構:

[JavaScript] 純文字檢視 複製程式碼
arr.unshift(元素一,元素二,....,元素N)

引數解析:

(1).元素N:要在陣列開頭插入的元素,可以是一個也可以是多個。

特別說明:

(1).此方法直接操作原陣列。

(2).返回新陣列的長度。

(3).方法的第一個引數將成為陣列的第一個元素,第二個引數,將成為陣列的第二個元素,以此類推。

瀏覽器相容:

(1).IE9+瀏覽器支援此方法。

(2).edge瀏覽器支援此方法。

(3).谷歌瀏覽器支援此方法。

(4).火狐瀏覽器支援此方法。

(5).opera瀏覽器支援此方法。

(6).safria瀏覽器支援此方法。

程式碼例項如下:

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr = ["螞蟻部落",6,"青島市南區"];
console.log(arr.unshift("ant"));

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/29/020150r9jkojtd2do99gk2.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

此方法的返回值是新陣列的長度,由於為陣列開頭新增了一個元素,所以長度變為4。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr = ["螞蟻部落",6,"青島市南區"];
console.log(arr.unshift("ant"));
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/29/020226tw1abuq16yu1zmbe.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

可以看到,此方法是直接修改原來的陣列。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr = ["螞蟻部落",6,"青島市南區"];
console.log(arr.unshift("ant","奮鬥"));
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/29/020309jzvvv6xrzxyzbvzv.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

上面程式碼中,unshift方法傳遞了兩個引數,注意著兩個引數在新陣列中的位置:

從引數列表的右側開始逐個將引數追加到陣列的前面,就如同把引數列表看做一個整體放置於陣列的前面。

[JavaScript] 純文字檢視 複製程式碼執行程式碼
let arr = ["螞蟻部落",6,"青島市南區"];
console.log(arr.unshift(["ant","奮鬥"]));
console.log(arr);

程式碼執行效果截圖如下:

a:3:{s:3:\"pic\";s:43:\"portal/201808/29/020346hzsdm9ung9sno0tz.png\";s:5:\"thumb\";s:0:\"\";s:6:\"remote\";N;}

在上述程式碼中,unshift方法的引數是一個陣列,這個時候,此陣列就被當做一個普通元素處理。

引數陣列的引數並不會被拆分處理,這一點要注意了。

相關文章