摘要:方法將所有在過濾函數(shù)中返回的數(shù)組元素放進(jìn)一個(gè)新數(shù)組中并返回。方法從左到右為每個(gè)數(shù)組元素執(zhí)行一次回調(diào)函數(shù),并把上次回調(diào)函數(shù)的返回值放在一個(gè)暫存器中傳給下次回調(diào)函數(shù),并返回最后一次回調(diào)函數(shù)的返回值。
創(chuàng)建數(shù)組
var array = new Array();
var array = new Array(10);
var array = new Array("red","blue","green");
var array = [];
var array = [1,2,3,4,5,6];
檢測(cè)數(shù)組確定某個(gè)對(duì)象是否是數(shù)組:
value instanceof Array
Array.isArray(value)
轉(zhuǎn)換方法:toString() valueOf() toLocaleStringtoString 方法返回一個(gè)字符串,該字符串由數(shù)組中的每個(gè)元素的 toString() 返回值經(jīng)調(diào)用 join() 方法連接(由逗號(hào)隔開)組成
var monthNames = ["Jan", "Feb", "Mar", "Apr"]; var myVar = monthNames.toString(); // assigns "Jan,Feb,Mar,Apr" to myVar.
toLocaleString() 返回一個(gè)字符串表示數(shù)組中的元素。數(shù)組中的元素將使用各自的 toLocaleString 方法轉(zhuǎn)成字符串,這些字符串將使用一個(gè)特定語言環(huán)境的字符串(例如一個(gè)逗號(hào) ",")隔開。
valueOf() 方法仍然會(huì)返回該數(shù)組 (如果放在console.log()中輸出,會(huì)自動(dòng)調(diào)用toString方法)
棧方法:讓數(shù)組的行為類似于數(shù)據(jù)結(jié)構(gòu)中的棧pop():刪除數(shù)組的最后一個(gè)元素,并返回該元素
push(): 在數(shù)組的末尾增加一個(gè)或多個(gè)元素,并返回新數(shù)組的長(zhǎng)度
var numbers = [1, 2, 3]; numbers.push(4); numbers.push(5,6,7);隊(duì)列方法
shift():刪除數(shù)組的第一個(gè)元素,并返回該元素
push()
unshift():在數(shù)組的開頭增加一個(gè)或多個(gè)元素,并返回新數(shù)組的長(zhǎng)度
排序方法 在原數(shù)組的基礎(chǔ)上進(jìn)行修改reverse(): 顛倒數(shù)組中元素的排列順序
sort(): 對(duì)數(shù)組元素進(jìn)行排序,并返回當(dāng)前數(shù)組,默認(rèn)排序順序是根據(jù)字符串的Unicode碼點(diǎn)
var scores = [1, 10, 21, 2]; scores.sort(); // [1, 10, 2, 21]
sort(compareFunction): 對(duì)數(shù)組元素按照指定的比較方法進(jìn)行排序,并返回當(dāng)前數(shù)組
如果指明了 compareFunction ,那么數(shù)組會(huì)按照調(diào)用該函數(shù)的返回值排序。即 a 和 b 是兩個(gè)將要被比較的元素: 如果 compareFunction(a, b) 小于 0 ,那么 a 會(huì)被排列到 b 之前; 如果 compareFunction(a, b) 等于 0 , a 和 b 的相對(duì)位置不變。 如果 compareFunction(a, b) 大于 0 , b 會(huì)被排列到 a 之前。 compareFunction(a, b) 必須總是對(duì)相同的輸入返回相同的比較結(jié)果,否則排序的結(jié)果將是不確定的。 var numbers = [4, 2, 5, 1, 3]; numbers.sort(function(a, b) { return a - b; }); console.log(numbers); // [1, 2, 3, 4, 5]其他方法
fill() 方法將一個(gè)數(shù)組的所有元素從開始索引填充到具有靜態(tài)值的結(jié)束索引
arr.fill(value, start, end) value 用來填充數(shù)組元素的值 start 開始索引 end 結(jié)束索引 [1, 2, 3].fill(4) // [4, 4, 4] [1, 2, 3].fill(4, 1) // [1, 4, 4] [1, 2, 3].fill(4, 1, 2) // [1, 4, 3] [1, 2, 3].fill(4, 1, 1) // [1, 2, 3] [1, 2, 3].fill(4, -3, -2) // [4, 2, 3]
splice()方法:在任意的位置給數(shù)組添加或者刪除任意個(gè)元素
array.splice(start[, deleteCount][,item1,item2, ...] ) var myFish = ["angel", "clown", "mandarin", "surgeon"]; //從第 2 位開始刪除 0 個(gè)元素,插入 "drum" var removed = myFish.splice(2, 0, "drum"); //運(yùn)算后的 myFish:["angel", "clown", "drum", "mandarin", "surgeon"] //被刪除元素?cái)?shù)組:[],沒有元素被刪除 //從第 3 位開始刪除 1 個(gè)元素 removed = myFish.splice(3, 1); //運(yùn)算后的myFish:["angel", "clown", "drum", "surgeon"] //被刪除元素?cái)?shù)組:["mandarin"] //從第 2 位開始刪除 1 個(gè)元素,然后插入 "trumpet" removed = myFish.splice(2, 1, "trumpet"); //運(yùn)算后的myFish: ["angel", "clown", "trumpet", "surgeon"] //被刪除元素?cái)?shù)組:["drum"] //從第 0 位開始刪除 2 個(gè)元素,然后插入 "parrot", "anemone" 和 "blue" removed = myFish.splice(0, 2, "parrot", "anemone", "blue"); //運(yùn)算后的myFish:["parrot", "anemone", "blue", "trumpet", "surgeon"] //被刪除元素的數(shù)組:["angel", "clown"] //從第 3 位開始刪除 2 個(gè)元素 removed = myFish.splice(3, Number.MAX_VALUE); //運(yùn)算后的myFish: ["parrot", "anemone", "blue"] //被刪除元素的數(shù)組:["trumpet", "surgeon"]
concat(): 返回一個(gè)由當(dāng)前數(shù)組和其他若干個(gè)數(shù)組或者若干個(gè)非數(shù)組值組合成的新數(shù)組
includes():判斷當(dāng)前數(shù)組是否包含指定的值,如果是返回true,否則返回false
join():連接所有數(shù)組元素組合成一個(gè)字符串,可以想join()傳入連接符號(hào)作為參數(shù)
slice():抽取當(dāng)前數(shù)組中的一段元素組合成一個(gè)新數(shù)組
arr.slice(); arr.slice(begin); arr.alice(begin, end) var a = ["zero", "one", "two", "three"]; var slice = a.slice(1,3); console.log(slice); // ["one", "two"]
indexOf():返回?cái)?shù)組中第一個(gè)與指定值相等的元素的索引,如果找不到,則返回-1
lastIndexOf():返回?cái)?shù)組中最后一個(gè)與指定值相等的元素的索引,如果找不到,則返回-1
Iteration方法forEach():為數(shù)組中的每個(gè)元素執(zhí)行一次回調(diào)函數(shù)
let a = ["a", "b", "c"]; a.forEach(function(element) { console.log(element); }); // a // b // c
entries()方法:返回一個(gè)新的Array Iterator 對(duì)象,該對(duì)象包含數(shù)組中每個(gè)索引的鍵值對(duì)
var arr = ["a", "b", "c"]; var iterator = arr.entries(); // undefined console.log(iterator); // Array Iterator {} console.log(iterator.next().value); // [0, "a"] console.log(iterator.next().value); // [1, "b"] console.log(iterator.next().value); // [2, "c"]
every()方法:如果數(shù)組中的每個(gè)元素都滿足測(cè)試函數(shù),則返回true,否則返回false
function isBigEnough(element, index, array) { return (element >= 10); } var passed = [12, 5, 8, 130, 44].every(isBigEnough); // passed 的值為 false
some()方法: 如果數(shù)組中至少有一個(gè)元素滿足測(cè)試函數(shù),則返回 true,否則返回 false。
filter()方法: 將所有在過濾函數(shù)中返回 true 的數(shù)組元素放進(jìn)一個(gè)新數(shù)組中并返回。
function isBigEnough(value) { return value >= 10; } var filtered = [12, 5, 8, 130, 44].filter(isBigEnough); // filtered is [12, 130, 44]
find()方法: 找到第一個(gè)滿足測(cè)試函數(shù)的元素并返回那個(gè)元素的值,如果找不到,則返回 undefined。
findIndex()方法: 找到第一個(gè)滿足測(cè)試函數(shù)的元素并返回那個(gè)元素的索引,如果找不到,則返回 -1。
map()方法:返回一個(gè)由回調(diào)函數(shù)的返回值組成的新數(shù)組。
reduce()方法: 從左到右為每個(gè)數(shù)組元素執(zhí)行一次回調(diào)函數(shù),并把上次回調(diào)函數(shù)的返回值放在一個(gè)暫存器中傳給下次回調(diào)函數(shù),并返回最后一次回調(diào)函數(shù)的返回值。
var sum = [0, 1, 2, 3].reduce(function(acc, val) { return acc + val; }, 0); console.log(sum); // 6
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.hztianpu.com/yun/83321.html
摘要:基礎(chǔ)基本的布局中間自適應(yīng)旁邊固定啥的的幾種實(shí)現(xiàn)方法垂直居中的幾種實(shí)現(xiàn)方法盒模型行內(nèi)元素和塊元素塊級(jí)格式化上線文,和浮動(dòng)一起考偽元素偽類這種預(yù)處理器基礎(chǔ)原型鏈閉包類和繼承實(shí)現(xiàn)方法實(shí)現(xiàn)方法異步處理方法寫一個(gè)方法遍歷所有文檔樹所有節(jié)點(diǎn)考察遞歸和和 html + css基礎(chǔ) ?基本的布局(中間自適應(yīng)旁邊固定啥的)的幾種實(shí)現(xiàn)方法; ?垂直居中的幾種實(shí)現(xiàn)方法; ?盒模型; ?position; ?...
摘要:基礎(chǔ)基本的布局中間自適應(yīng)旁邊固定啥的的幾種實(shí)現(xiàn)方法垂直居中的幾種實(shí)現(xiàn)方法盒模型行內(nèi)元素和塊元素塊級(jí)格式化上線文,和浮動(dòng)一起考偽元素偽類這種預(yù)處理器基礎(chǔ)原型鏈閉包類和繼承實(shí)現(xiàn)方法實(shí)現(xiàn)方法異步處理方法寫一個(gè)方法遍歷所有文檔樹所有節(jié)點(diǎn)考察遞歸和和 html + css基礎(chǔ) ?基本的布局(中間自適應(yīng)旁邊固定啥的)的幾種實(shí)現(xiàn)方法; ?垂直居中的幾種實(shí)現(xiàn)方法; ?盒模型; ?position; ?...
閱讀 3664·2021-11-25 09:43
閱讀 3200·2021-10-08 10:04
閱讀 1701·2019-08-26 12:20
閱讀 2128·2019-08-26 12:09
閱讀 684·2019-08-23 18:25
閱讀 3642·2019-08-23 17:54
閱讀 2417·2019-08-23 17:50
閱讀 874·2019-08-23 14:33