JavaScript數組方法大全(第一篇)

數組方法大全(第一篇)

注意:第一次寫博客有點小緊張,若有錯誤歡迎指出,若有雷同純屬巧合,本次總結參考書籍JavaScript權威指南,有興趣的小夥伴能夠去翻閱一下哦

join()方法

該方法是將數組內的全部元素轉化爲字符串並拼接在一塊兒,最後返回生成的字符串。能夠指定一個可選的字符串,來分隔數組得各個元素,默認使用 「,」 相隔

例:javascript

var arr  = [1,2,3];
arr.join();     ==> 輸出'1,2,3'
arr.join(" ")   ==> 輸出'1 2 3'
arr.join("")    ==> 輸出'123'

//此時再次打印arr
console.log(arr);   ==> 輸出[1,2,3]

reverse()方法

該方法是將數組中的元素顛倒順序,返回逆向數組

例:java

var arr = [1,4,3];
arr.reverse();  ==> 輸出[3,4,1]

//此時再次打印arr
console.log(arr);   ==> 輸出[3,4,1]

sort()方法

該方法是將數組中的元素排序,返回排序後的結果,默認是按字母表順序進行排序(若有必要將轉化爲字符串進行比較),若是數組中帶有undefined元素,則它們會被排到數組尾部。能夠傳遞一個函數,該函數決定了它的兩個參數在排好序的數組中的前後順序,若是函數的返回值小於0,則第一個參數就在前面,反之,第一個參數就在後面,假設兩個值相等,則就返回0

例:數組

var arr = ['abc','cfg','1',undefined]
arr.sort();     ==> 輸出["1", "abc", "cfg", undefined]

var arr1 = [2,5,3,7,6];
//返回值小於0,從小到大進行排列
arr1.sort(function (a,b) {return a - b});   ==> 輸出[2, 3, 5, 6, 7]
//返回值大於0,從大到小進行排列
arr1.sort(function (a,b) {return b - a});   ==>輸出[7, 6, 5, 3, 2]

//此時輸出arr1
console.log(arr1);  ==>輸出[7, 6, 5, 3, 2]

concat方法

該方法會將原數組和傳進來的參數拼接成一個新的數組並返回,不修改原數組,若是傳進來的參數爲數組,則會將數組裏的每一項與原數組拼接

例:函數

var arr = [1,3];
arr.concat(5,4,[6,7,[8,9]],{s:'1'});    ==> 輸出[1,3,5,4,6,7,[8,9],{s:'1'}]

//此時輸出arr
console.log(arr);   ==>輸出[1,3]

slice(start,end)方法

該方法返回指定數組的一個片斷或者子數組,最多能夠傳遞兩個參數,當只傳遞一個參數時,表示從指定起始位置,一直到最後,返回包含起始位置的數組,若是傳遞兩位,返回包含起始位置,但不包含結束位置的數組,若是傳遞負數,表示結束位置爲倒數第幾位,此方法不改變原數組

例:code

var arr = [1,2,3,4];
arr.slice(0,2);     ==> 輸出[1,2]
arr.slice(1);       ==> 輸出[2,3,4]
arr.slice(-1,-3);   ==> 輸出[]
arr.slice(-3,-2);   ==> 輸出[2]
arr.slice(1,-1);    ==> 輸出[2,3]

//此時輸出arr
console.log(arr)    ==> 輸出[1,2,3,4]

splice()方法

該方法能夠插入或者刪除數組中的元素,裏面能夠傳參數,第一個參數表明插入或刪除的起始位置,第二個參數是指定刪除元素的個數,不傳就表明從起始點到數組末尾的元素都將被刪除,緊跟其後的參數都是要插入數組中的元素,記住它的返回值是由刪除的元素組成的數組,它會修改原數組

例:排序

var arr = [1,2,3,4];
var a = arr.splice(2);  ==> 輸出a的值爲[3,4],此時arr的值爲[1,2]

//上下對應的是不一樣的方式運行的結果

var a = arr.splice(1,2);    ==>輸出a的值爲[2,3],此時arr的值爲[1,4]

var a = arr.splice(1,2,5,6);    ==>輸出a的值爲[2,3],此時arr的值爲[1,5,6,4]

var a = arr.splice(1,2,[5,6]);  ==>輸出a的值爲[2,3],此時arr的值爲[1,[5,6],4]
//該方法區別於concat,它會把指定插入的什麼,就會插入什麼,不會作出改變

push()方法,pop()方法

1. push方法在數組的尾部添加一個或者多個元素,返回的是數組的新的長度

例:ip

var arr = [1,2];
var a = arr.push([],{},3,[1,2],{s:'haha'}); ==>輸出a的值爲6

//原數組arr爲[1,2,[],{},[1,2],{s:'haha'}]

2. pop方法是刪除數組的最後一個元素,返回的是刪除的值

例:字符串

var arr = [1,2,3];
var a = arr.pop();  ==>輸出a的值爲3,原數組arr的值爲[1,2]

//pop裏面傳參數是沒有用的,返回的都是數組最後一位

unshift()方法、shift()方法

1. unshift()方法,是在數組的最前面插入指定元素,返回新數組的長度

var arr = [1,2,3];
var a = arr.unshift(4,5,6); ==>輸出a的值6,原數組arr爲[4,5,6,1,2,3]

2. shift()方法,是刪除數組第一位元素,返回刪除的值

var arr = [1,2,3];
var a = arr.shift();    ==>輸出a的值爲1,原數組arr爲[2,3]

//shift方法裏面傳參沒有什麼用,返回的都是數組的第一位

toString()方法、toLocaleString()方法

1. toString()方法將其數組中的每一個元素轉化爲字符串,必要時將調用元素的toString方法

注意:輸出不包括方括號或其它任何形式的包裹數組值得分隔符get

var arr = ['a',1,[2,3],[],{},{s:'hello'}];
var a = arr.toString();
//輸出a的值爲"a,1,2,3,,[object Object],[object Object]"

2. toLocaleString()方法,這裏就不作過多介紹,詳情點這裏

總結:

  • 會修改原數組的值方法有 push(),pop(),unshift(),shift(),splice()

  • 會修改原數組的順序的有reverse()(反轉),sort()(排序)

相關文章
相關標籤/搜索