Array數組對象方法

Array 對象方法

方法 描述
concat() 連接兩個或更多的數組,並返回結果。
copyWithin() 從數組的指定位置拷貝元素到數組的另一個指定位置中。
entries() 返回數組的可迭代對象。
every() 檢測數值元素的每個元素是否都符合條件。
fill() 使用一個固定值來填充數組。
filter() 檢測數值元素,並返回符合條件所有元素的數組。
find() 返回符合傳入測試(函數)條件的數組元素。
findIndex() 返回符合傳入測試(函數)條件的數組元素索引。
forEach() 數組每個元素都執行一次回調函數。
from() 通過給定的對象中創建一個數組。
includes() 判斷一個數組是否包含一個指定的值。
indexOf() 搜索數組中的元素,並返回它所在的位置。
isArray() 判斷對象是否爲數組。
join() 把數組的所有元素放入一個字符串。
keys() 返回數組的可迭代對象,包含原始數組的鍵(key)。
lastIndexOf() 搜索數組中的元素,並返回它最後出現的位置。
map() 通過指定函數處理數組的每個元素,並返回處理後的數組。
pop() 刪除數組的最後一個元素並返回刪除的元素。
push() 向數組的末尾添加一個或更多元素,並返回新的長度。
reduce() 將數組元素計算爲一個值(從左到右)。
reduceRight() 將數組元素計算爲一個值(從右到左)。
reverse() 反轉數組的元素順序。
shift() 刪除並返回數組的第一個元素。
slice() 選取數組的的一部分,並返回一個新數組。
some() 檢測數組元素中是否有元素符合指定條件。
sort() 對數組的元素進行排序。
splice() 從數組中添加或刪除元素。
toString() 把數組轉換爲字符串,並返回結果。
unshift() 向數組的開頭添加一個或更多元素,並返回新的長度。
valueOf() 返回數組對象的原始值。

一、concat() 方法

concat() 方法用於連接兩個或是多個數組,並將新的數組返回。

方法不會改變原有的數組,僅僅會返回被連接數組的一個副本。

語法:

arrayObject.concat(arrayX,arrayX,......,arrayX)

參數:

arrayX,該參數可以是具體的值,也可以是數組對象,

返回值:

返回一個新的數組。該數組是通過把所有 arrayX 參數添加到 arrayObject 中生成的。如果想要進行 concat() 操作的參數是數組,那麼添加的是數組中的元素,而不是數組。

實例:

使用concat() 方法連接數組中的值。

var arr=["大雪","小雪","霜降","立冬","寒露"]
console.log(arr.concat("清明","秋分"));
console.log(arr);

 使用concat() 方法連接兩個數組。

var arr=["大雪","小雪","霜降","立冬","寒露"]
var arr2 =["一月","二月","三月"]
console.log(arr.concat(arr2));
console.log(arr);

 

二、join() 方法

join() 方法用於將數組中的所有元素都放到一個字符串中。該方法可以將數組轉換成一個字符串。

注意:

1、元素是指定分隔符進行分割的

2、該方法不會對原數組產生影響,而是將轉換後的字符串作爲結果返回。

語法:

arrayObject.join(separator)

參數:

separator ,可選,指定要使用的分隔符,如果省略這個參數,則將默認使用逗號分隔。

返回值:

返回一個字符串。該字符串是通過吧 arrayObject 的每個元素轉換爲字符串,然後將這些字符串連接起來,並在兩個元素中間插入 separator 字符串而生成的。

實例:

將數組中的元素放到一個字符串,將字符串使用(/)符號分隔

var arr=["大雪","小雪","霜降","立冬","寒露"]
console.log(arr.join());
console.log(arr.join('/'));

 

三、reverse() 方法

該方法用於顛倒數組中元素的順序,用以反轉數組(前面的去後面,後面的去前面);

語法:

arrayObject.reverse()

注意:

該方法會改變原來的數組,但是不會創建新的數組。

實例:

創建一個數組,改變裏面的元素順序

var arr=["大雪","小雪","霜降","立冬","寒露"]
console.log(arr.reverse());
console.log(arr);

 

四、sort() 方法

sort() 方法用於對數組中的元素進行排序

語法:

arrayObject.sort(sortby)

參數:

sortby,可選,規定排序順序,必須是函數

返回值:

可以對數組中的元素進行排序,也會影響原數組,默認會按照Unicode 編碼進行排序。

註釋:

如果調用該方法時沒有使用參數,將按字母順序對數組中的元素進行排序,更準確的說是按照 Unicode字符編碼的順序進行排序。

即使對於純數字的數組,使用 sort() 排序時,也會按照 Unicode 編碼排序,所以對數字進行排序時有可能得到錯誤的結果。

如果想實現這一點,首先應該把數組的元素都轉換成字符串(如果有必要),以便進行比較。

如果想按照其他標準進行排序,就需要在 sort() 裏面添加一個回調函數,回調函數中需要兩個形參(a 和 b),瀏覽器將會分別使用數組中的元素作爲實參去調用回調函數。其返回值如下:

使用哪個元素調用不確定,但是肯定的是在數組中 a 一定是在 b 前面。瀏覽器會根據回調函數的返回值來決定元素的順序。

如果 a 小於 b,在排序後的數組中 a 應該出現在 b之前,則返回一個小於 0 的值。

如果 a 等於 b,則返回 0;

如果 a 大於 b,則返回一個大於 0的值。

  如果返回一個大於0的值,則元素就會交換位置;如果返回一個小於0的值,則元素位置不變;

實例:(a 和 b會使用哪個元素調用不確定,但是肯定的是在數組中 a一定在 b前面)

var aa=[3,4,3,5];
aa.sort(function(a,b){
console.log('a= '+a);
console.log('b= '+b);
});
console.log(aa);

 實例:

創建一個數組,並按照字母順序進行排序

var arr = new Array(6)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
arr[3] = "James"
arr[4] = "Adrew"
arr[5] = "Martin"
console.log(arr);
console.log(arr.sort());

 

 按照數字的順序返回數組:

var arr=[1,2,31,75,32,0,1];
console.log(arr.sort());

注意:上面的代碼沒有按照數值的大小對數字進行排序,要實現這一點,就必須使用一個排序函數  sortNember

<script type="text/javascript">
function sortNumber(a,b){
    return a - b
}
var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
console.log(arr)
console.log(arr.sort(sortNumber))
</script>

 

 

 五、push() 方法

push()  方法可以向數組末尾添加一個或是多個元素,並返回數組新的長度

可以將要添加的元素作爲方法的參數傳遞,這樣這些元素會自動添加到數組的末尾。

語法:

arrayObject.push(newelement1,newelement2,....,newelementX)

參數:

newelement1 必需。要添加到數組的第一個元素。

newelement2 可選。要添加到數組的第二個元素。

newelementX 可選。可添加多個元素。 

返回值:

把指定的值添加到數組後的新長度。

注意:

1、push()方法可以把它的參數添加到 arrayObject 的尾部。直接修改 arrayObject,而不是創建一個新的數組。push()方法和 pop()方法使用數組中提供的先進後出棧的功能

2、該方法會改變原有數組的長度;

3、如果想在數組的開頭添加一個或是多個元素,可以使用 unshift() 方法。

實例:

通過 push() 方法在數組尾部添加元素,並且返回數組的長度;

var arr = ["大雪","小雪","霜降"]
var result = arr.push('冬至');
console.log(arr);
console.log("result = " +result);

 

六、pop() 方法

該方法可以刪除並返回數組中的最後一個元素。

語法:

arrayObject.pop()

返回值:

數組對象的最後一個元素

注意:

pop() 方法將刪除 arrayObject 的最後一個元素,把數組長度減 1,並且返回它刪除的元素的值。如果數組已經是個空數組,則 pop() 不該變數組,並且返回 undefined值。

實例:

刪除數組中的最後一個元素。

var arr = ["大雪", "小雪", "霜降", "冬至"]
var result = arr.pop();
console.log(arr);
console.log("result = " +result);

 當數組是空數組沒有元素可以刪除的時候,就會返回 undefined

 

七、unshift() 方法

該方法可以向數組開頭添加一個或者是多個元素,並且返回新的數組長度。

語法:

arrayObject.unshift(newelement1,newelement2,....,newelementX)

參數:

newelement1 必需。要添加到數組的第一個元素。

newelement2 可選。要添加到數組的第二個元素。

newelementX 可選。可添加多個元素。 

返回值:

數組對象的新長度;

注意:

1、unshift() 方法將它的參數插入到 arrayObject 的頭部,並將已經存在的元素順次地一到較高的下標處,以便留出空間。

在前面插入元素之後,其他元素的索引會依次調整;

2、unshift() 方法不創建新的元素,而是直接修改原有的數組。該方法會改變數組的原有長度;

3、該方法在IE瀏覽器中無法正常使用。

實例:

var arr = ["大雪","小雪","霜降"]
var result = arr.unshift('冬至');
console.log(arr);
console.log("result = " +result);

 

八、shift() 方法

shift() 方法用於把數組中的第一個元素從中刪除,並且返回第一個元素的值。

語法:

arrayObject.shift()

返回值:

數組原來第一個元素的值;

注意:

1、如果數組是空的,那麼 shift() 方法將不進行任何操作,返回 undefined 值。

2、該方法不創建新的數組,而是直接修改原有的 arrayObject。會改變原有數組的長度。

var arr = ["大雪","小雪","霜降","冬至"]
var result = arr.shift();
console.log(arr);
console.log("result = " +result);

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章