js 數組原型要領總結

MDN web docs:

https://developer.mozilla.org…

push(ele1,ele2,….,eleX)

ele1:必需。增加到數組尾部的第一個元素。
ele2:可選。增加到數組尾部的第二個元素。
eleX:可選。可增加多個元素。
功用:向數組的末端增加一個或多個元素。
會轉變原數組的,返回值是轉變后的數組長度

var arr = [1,2,3];
var length = arr.push(4,5)
console.log('length: ' + length + '  arr: ' + arr)
// length: 5  arr: [1,2,3,4,5]

pop()

功用:刪除並返回數組的末了一個元素。
會轉變原數組,返回值是pop出來的元素值

var arr = [1,2,3];
var val = arr.pop()
console.log('val: ' + val + '  arr: ' + arr)
// val: 3  arr: [1,2]

unshift(ele1,ele2,….,eleX)

ele1:必需。增加到數組頭部的第一個元素。
ele2:可選。增加到數組頭部的第二個元素。
eleX:可選。可增加若干個元素。
功用:向數組的開首增加一個或更多元素。
會轉變原數組,返回值是轉變后的數組長度

var arr = [1,2,3];
var length = arr.unshift('haha')
console.log('length : ' + length + '  arr: ' + arr)
// length : 4  arr: ['haha',1,2,3]

shift()

功用:刪除並返回數組的第一個元素。
會轉變原數組,返回值是shift出來的元素值

var arr = [1,2,3];
var val = arr.shift()
console.log('val: ' + val + '  arr: ' + arr)
// val: 1  arr: [2,3]

concat(arrayX,arrayX,……,arrayX)

arrayX:必需。該參數可所以詳細的值,也可所以數組對象。可所以恣意多個。
功用:用於銜接兩個或多個數組。
不會轉變原數組,返回值是一個新數組

var arr = [1,2,3];
var arr1 = arr.concat(4,5,['haha','hehe'])
console.log('arr : ' + arr + '  arr1: ' + arr1)
// arr : [1,2,3]  arr1: [1,2,3,4,5,'haha','hehe']

reverse()

功用:用於倒置數組中元素的遞次。
會轉變原數組,返回值是原數組

var arr = [1,2,3];
var arr1 = arr.reverse(); // [3,2,1]
console.log('arr: ' + arr + '   arr1: ' + arr1)
// arr: [3,2,1]   arr1: [3,2,1]

sort(sortby)

sortby:可選。劃定排序遞次。必需是函數。
功用:對數組的元素舉行排序。
會轉變原數組,返回值是原數組

// 無sortby,將按字母遞次對數組中的元素舉行排序,更準確點,是根據字符編碼的遞次舉行排序。
// 要完成這一點,起首應把數組的元素都轉換成字符串(若有必要),以便舉行比較。
var arr = [10, 5, 40, 25, 1000, 1];
var arr1 = arr.sort();
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: 1,10,1000,25,40,5    arr1: 1,10,1000,25,40,5

// 有sortby函數,該函數要比較兩個值,然後返回一個用於申明這兩個值的相對遞次的数字。
// 比較函數應當具有兩個參數 a 和 b,其返回值以下:
// 若 a 小於 b,在排序后的數組中 a 應當出現在 b 之前,則返回一個小於 0 的值。
// 若 a 即是 b,則返回 0。
// 若 a 大於 b,則返回一個大於 0 的值。
function sortNumber(a,b) {
  return a - b
}
var arr = [10, 5, 40, 25, 1000, 1];
var arr1 = arr.sort(sortNumber);
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: 1,5,10,25,40,1000    arr1: 1,5,10,25,40,1000

slice(start, end)

start:可選。劃定從那邊最先拔取。沒有指定,示意從0最先。可為負數。
end:可選。劃定從那邊完畢拔取。沒有指定,示意從 start 到數組完畢的一切元素。可為負數。
下標為負數,代表從數組尾部最先算起,-1 指末了一個元素,-2 指倒數第二個元素,以此類推。
功用:從原數組中拔取部份元素(下標是 start 到 end-1 的元素)構成新數組。
不會轉變原數組,返回值是一個新數組。

// 有end
var arr = [1,2,3,4];
var arr1 = arr.slice(1,3); // 1:肇端下標,3:完畢下標
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,2,3,4]    arr1: [2,3]

// 無end,那末切分的數組包括從 start 到數組完畢的一切元素
var arr = [1,2,3,4];
var arr1 = arr.slice(1); // 1:肇端下標
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,2,3,4]    arr1: [2,3,4]

// 無start,無end
var arr = [1,2,3,4];
var arr1 = arr.slice(); // 1:肇端下標,3:完畢下標
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,2,3,4]    arr1: [1,2,3,4]

// end為負數
var arr = [1,2,3,4];
var arr1 = arr.slice(1, -2);
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,2,3,4]    arr1: [2]

// start為負數
var arr = [1,2,3,4];
var arr1 = arr.slice(-3, -2);
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,2,3,4]    arr1: [2]

splice(index,howmany,item1,…..,itemX)

index:必需。整數,劃定增加/刪除項目的位置,運用負數可從數組結尾處劃定位置。
howmany:必需。要刪除的項目數目。假如設置為 0,則不會刪除項目。
item1, …, itemX:可選。向數組增加的新項目。
功用:刪除、插進去和替代原數組。返回被刪除的項目所構成的數組
會轉變原數組,返回值是一個新數組

// 刪除
var arr = [1,2,3,4,5];
var arr1 = arr.splice(1,2); // 1:肇端下標,2:刪除的項數
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,4,5]    arr1: [2,3]

// 插進去
var arr = [1,2,3,4,5];
var arr1 = arr.splice(1,0,'a','b'); // 1:肇端下標(在此下標之前插進去),0:不刪除,'a'和'b'是要插進去的元素
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,a,b,2,3,4,5]   arr1: []

// 替代
var arr = [1,2,3,4,5];
var arr1 = arr.splice(1,2,'a','b','c'); // 1:肇端下標,2:刪除的項數,'a','b','c'是要插進去的元素
console.log('arr: ' + arr + '    arr1: ' + arr1)
// arr: [1,a,b,c,4,5]    arr1: [2,3]

join(separator)

separator:可選。指定要運用的分隔符。假如省略該參數,則運用逗號作為分隔符。
功用:將數組的一切元素構成一個字符串。
不會轉變原數組,返回值是一個字符串

// 無 separator
var arr = [1,2,3,4,5];
var str = arr.join();
console.log('arr: ' + arr + '    str: ' + str)
// arr: [1,2,3,4,5]    str: '1,2,3,4,5'

// 有 separator
var arr = [1,2,3,4,5];
var str = arr.join('-');
console.log('arr: ' + arr + '    str: ' + str)
// arr: [1,2,3,4,5]    str: '1-2-3-4-5'

    原文作者:小被子
    原文地址: https://segmentfault.com/a/1190000014996550
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞