該方法接受任意個引數,然後新增到陣列的末尾
function
push
(arr,
...arg)
//push 接受任意個引數,按照順序新增到陣列末尾,返回新的陣列長度
return arr.length;
}
該方法刪除並返回陣列的最後乙個元素,如果陣列為空,返回undefined
function
pop(arr)
//返回陣列最後乙個元素,並刪除該元素,陣列長度減一
let tmp = arr[arr.length -1]
; arr.length--
;return tmp;
}
該方法刪除並返回陣列的第乙個元素,實現時我們只要將第二個元素的值賦給第乙個,第三個的值賦給第二個,依次類推,直到最後乙個。
function
shift
(arr)
//刪除陣列的第乙個元素,並返回
let tmp = arr[0]
;for
(let i =
0; i < arr.length; i++
) arr.length--
;return tmp;
}
該方法將任意個數插入到陣列的前面,實現方法:將陣列從最後乙個元素開始依次向後移動引數的個數個位置,即把前面的位置空出來,然後在把引數依次插入到前面
function
unshift
(arr,
...arg)
for(
let i =
0; i < len; i++
)return arr.length;
}
該方法接受將任意多個引數合併到原陣列後,值得注意的事,如果引數是乙個陣列,需要將陣列展開。
function
concat
(arr,
...arg)
for(
let j =
0; j < arg.length; j++)}
else};
return new_arr;
}
該方法接受兩個引數,第乙個引數是擷取區間的開始索引,第二個引數是結束索引+1,需要注意的是
1、原生的slice方法當傳入的第乙個引數不是非數字型別,預設為0。引數為負數則加上陣列的長度計算,如果負數的絕對值大於陣列的長度,則算作0。
2、第二個引數不是數值時預設為陣列長度,如果為負數則加上陣列的長度計算。如果負數的絕對值大於陣列長度,則算作0.
3、返回值擷取的陣列
function
slice
(arr, start, end)
return new_arr;
}
該方法接受多個引數,其中第乙個引數為開始刪除的位置,第二個引數為刪除的長度,後面的引數為在刪除位置替換的元素,值得注意的是:
1、當第二個引數為0時,該函式可以用於在陣列中插入元素
2、原生的slpice方法當傳入的第乙個引數不是非數字型別,預設為0。引數為負數則加上陣列的長度計算,如果負數的絕對值大於陣列的長度,則算作0。
3、第二個引數如果為非數值或者負數,都算作0。
function
splice
(arr, start, num,
...arg)
let arrlen = arr.length;
for(
let i = start; i < arrlen - num; i++
)//刪除節點
arr.length -= num;
arrlen = arr.length;
for(
let j = arrlen -
1; j > arrlen -
1- len; j--
)//空出替換位置
for(
let j = start; j < start + len; j++
)//替換
return new_arr;
}
該方法用於倒置陣列,實習起來比較簡單,我們將陣列第乙個數和最後乙個交換,第二個和倒數第二個交換,一次類推,值得注意的是,該方法不僅會改變原陣列,還會返回原陣列。
function
reverse
(arr)
return arr;
}
該方法接受乙個資料,返回該資料在陣列中的從左往右第乙個索引
function
indexof
(arr,value)
}return-1
;}
該方法接受乙個資料,返回該資料在陣列中的從右往左第乙個索引
function
lastdexof
(arr,value)
}return-1
;}
原生JS常用陣列方法大全
一,陣列的方法 以下方法是原有陣列發生改變 1 shift 刪除陣列第一項,括號裡邊沒有引數。例如 var ary 1,2,3,4 var res ary.shift console.log res 返回的值是被刪除的第一項 1 console.log ary 列印出的是被刪除後的新的陣列 2,3,...
JS原生陣列方法的用法及其實現(二)
entries 方法返回乙個新的array iterator物件,該物件包含陣列中每個索引的鍵 值對。entries 函式返回的是乙個陣列的迭代物件,與generator 函式 可以參考阮一峰大叔寫的es6入門中的介紹generator 函式 的返回結果是一樣的,所以直接通過.next 依次得到結果...
js陣列原生方法的實現
1 陣列遍歷foreach 自定義foreach param fn 待執行方法 function foreach fn 2 陣列對映map 自定義map param fn 待執行方法 function map fn return list 3陣列過濾filter 自定義filter param fn...