摘要:方法為數(shù)組中的每個元素都調(diào)用一次函數(shù)執(zhí)行如果沒有符合條件的元素返回對于空數(shù)組,函數(shù)是不會執(zhí)行的。不改變原數(shù)組和差不多,默認(rèn)返回的是索引。擅長網(wǎng)站建設(shè)公眾號開發(fā)微信小程序開發(fā)小游戲公眾號開發(fā),專注于前端領(lǐng)域框架交互設(shè)計圖像繪制數(shù)據(jù)分析等研究。
length屬性不是只讀,可以設(shè)置該屬性,從數(shù)組的末尾移除項或添加新項
檢測數(shù)組:
一個全局作用域下(一個網(wǎng)頁),使用instanceof
兩個以上不同的全局執(zhí)行環(huán)境(網(wǎng)頁包含多個框架),使用Array.isArray()
toString()
返回由數(shù)組中每個值的字符串形式拼接而成的以逗號(,)分隔的字符串,實際上會調(diào)用每一項的toString()
toLocaleString() 返回值經(jīng)常與toString()相同, 但調(diào)用的是每一項的toLocaleString()
valueOf() 返回數(shù)組本身
push() 數(shù)組末尾添加任意個項,返回數(shù)組新的長度,
pop() 刪除數(shù)組末的最后一個元素,并返回移除的項
shift() 刪除并返回數(shù)組第一項
unShift() 在數(shù)組的開頭添加任意個項,并返回數(shù)組新的長度
reverse() 反轉(zhuǎn)數(shù)組項的順序,該方法會改變原來的數(shù)組,而不會創(chuàng)建新的數(shù)組。
sort()
默認(rèn)情況下,sort()方法按升序排列數(shù)組,通過調(diào)用每一項的toSring()再比較,因此比較的是字符串
接受一個比較函數(shù)作為參數(shù)時,比較函數(shù)接受兩個參數(shù),來指定哪個值位于哪個值得前面,
function sortNumber(a,b) {
return a - b
} //升序
concat() 可以拼接任意數(shù)組,返回新數(shù)組,不改變自身
slice() 接受兩個參數(shù),代表截取得起止位置,不包含結(jié)束位置,一個參數(shù)時默認(rèn)截取到最后,參數(shù)為負(fù)數(shù)時,加上數(shù)組本身長度,注意 不影響原數(shù)組,如果起始位置小于結(jié)束位置,則返回空數(shù)組
splice()
刪除: 兩個參數(shù) 刪除的第一項的位置 和 刪除的項數(shù)
插入: 三個參數(shù) 起始位置、 0(刪除的項數(shù))和插入的項,若插入多項,則在后面加上插入的項
替換: 三個參數(shù) 起始位置、 刪除的項數(shù)、替換的項(任意數(shù)量) 返回從數(shù)組中刪除的項,沒有刪除時返回空數(shù)組,改變原數(shù)組
indexOf()
lastIndexOf() 都接受兩個參數(shù) 查找的項和查找起點位置的索引(可選),返回查找項在數(shù)組中的位置,沒找到時返回1
let arr = ["orange", "2016", "2016"];
arr.indexOf("orange"); //0
arr.indexOf("o"); //-1 因為此方法不會在每一個元素的基礎(chǔ)上再次執(zhí)行 indexOf 匹配。
arr.indexOf("2016"); //1
arr.indexOf(2016); //-1 注意:這里不會做隱式類型轉(zhuǎn)換。
每個方法都接受兩個參數(shù),第一個為在每一項運行的函數(shù),第二個為運行該函數(shù)的作用域?qū)ο螅蛇x) 函數(shù)接受三個參數(shù):item,index, array本身,都不會改變原數(shù)組
every() 傳入函數(shù)的每一項都滿足函數(shù),返回true
some() 某一項滿足函數(shù)的條件,返回true
forEach() 與for循環(huán)用法一致,無返回值
filter() 返回一個新的數(shù)組,用指定的函數(shù)確定是否在返回的數(shù)組中包含某一項
map() 返回一個新的數(shù)組,該數(shù)組的值對應(yīng)原數(shù)組的每一項運行指定函數(shù)的返回值
reduce()
reduceRighht() 兩個方法都會迭代數(shù)組的所有項,構(gòu)建一個最終的返回值 接受兩個參數(shù): 每一項調(diào)用的函數(shù) 和 歸并基礎(chǔ)的初始值 函數(shù)接受四個參數(shù): 前一個值 當(dāng)前值 索引 和數(shù)組對象,該函數(shù)的返回值都會作為第一個參數(shù)傳給下一項,第一次迭代發(fā)生在數(shù)組的第二項上,因此第一個參數(shù)是數(shù)組的第一項,第二個參數(shù)是數(shù)組的第二項
find() 返回通過測試(函數(shù)內(nèi)判斷)的數(shù)組的第一個元素的值。 find() 方法為數(shù)組中的每個元素都調(diào)用一次函數(shù)執(zhí)行: 如果沒有符合條件的元素返回 undefined find() 對于空數(shù)組,函數(shù)是不會執(zhí)行的。 不改變原數(shù)組
findIndex() 和find()差不多,默認(rèn)返回的是索引。
includes() 與String的includes()一樣,接收2參數(shù),查詢的項以及查詢起始位置,返回true或false
keys() 對數(shù)組索引的遍歷
values() 對數(shù)組項的遍歷
entries() 對數(shù)組鍵值對的遍歷
let arr=["w","b"];
for(let a of arr.entries()){
console.log(a)
}//結(jié)果:[0,w],[1,b]
for(let [i,v] of arr.entries()){
console.log(i,v)
}//結(jié)果:0 w,1 b
fill() 數(shù)組填充
let arr=["w","b"];
arr.fill("i")//結(jié)果:["i","i"],改變原數(shù)組
arr.fill("o",1)//結(jié)果:["i","o"]改變原數(shù)組,第二個參數(shù)表示填充起始位置
new Array(3).fill("k").fill("r",1,2)//結(jié)果:["k","r","k"],第三個數(shù)組表示填充的結(jié)束位置,前開后閉區(qū)間
- Array.from()
把帶有l(wèi)enght屬性類似數(shù)組的對象轉(zhuǎn)換為數(shù)組,也可以把字符串等可以遍歷的對象轉(zhuǎn)換為數(shù)組,它接收2個參數(shù),轉(zhuǎn)換對象與回調(diào)函數(shù)
```
Array.from({"0":"w","1":"b",length:2})//["w", "b"],返回數(shù)組的長度取決于對象中的length,故此項必須有!
Array.from({"0":"w","1":"b",length:4})//["w", "b", undefined, undefined]
Array.from({"0":"w","1":"b",length:1})//["w"]
let divs=document.getElementsByTagName("div");
Array.from(divs)//返回div元素數(shù)組
Array.from("wbiokr")//["w", "b", "i", "o", "k", "r"]
Array.from([1,2,3],function(x){
return x+1
})//[2, 3, 4],第二個參數(shù)為回調(diào)函數(shù)
```
【完】
**作者簡介**:鄭佳歡,蘆葦科技web前端實習(xí)生,公司作品:口紅挑戰(zhàn)網(wǎng)紅小游戲、服務(wù)端渲染官網(wǎng)。擅長網(wǎng)站建設(shè)、公眾號開發(fā)、微信小程序開發(fā)、小游戲、公眾號開發(fā),專注于前端領(lǐng)域框架、交互設(shè)計、圖像繪制、數(shù)據(jù)分析等研究。 一起并肩作戰(zhàn): [[email protected]](mailto:[email protected]) 訪問 [www.talkmoney.cn](http://www.talkmoney.cn/) 了解更多
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/6926.html
摘要:方法為數(shù)組中的每個元素都調(diào)用一次函數(shù)執(zhí)行如果沒有符合條件的元素返回對于空數(shù)組,函數(shù)是不會執(zhí)行的。不改變原數(shù)組和差不多,默認(rèn)返回的是索引。 1. length屬性 && 檢測數(shù)組 length屬性不是只讀,可以設(shè)置該屬性,從數(shù)組的末尾移除項或添加新項 檢測數(shù)組: 一個全局作用域下(一個網(wǎng)頁),使用instanceof 兩個以上不同的全局執(zhí)行環(huán)境(網(wǎng)頁包含多個框架),使用Array....
摘要:如何使用,在一個類型的數(shù)組里,查找最大或最小數(shù)呢以下介紹五個方法。利用代碼如下解釋方法就是通過一個函數(shù),針對一個累加器和數(shù)組中的每一個元素,將一個數(shù)組最終減少到一個值。如果求最小值,將改成。 如何使用JS,在一個Number類型的數(shù)組里,查找最大(或最?。?shù)呢? 以下介紹五個方法。(如果有新方法,后續(xù)會更新,也歡迎各位留言提供新方法) 1. 不使用任何庫函數(shù) 代碼如下: functio...
摘要:屬性名描述為對象添加屬性方法返回數(shù)組對象引用返回數(shù)組元素數(shù)目方法名描述返回更改原數(shù)組連接多個數(shù)組連接后新數(shù)組將數(shù)組中所有元素合為一個字符串。 屬性名 描述 prototype 為對象添加屬性、方法 constructor 返回數(shù)組對象引用 length 返回數(shù)組元素數(shù)目 方法名 描述 返回 更改原數(shù)組 concat() 連接多個數(shù)組 連接后新數(shù)組 N ...
摘要:月下半旬攻略道題,目前已攻略題。目前簡單難度攻略已經(jīng)到題,所以后面會調(diào)整自己,在刷算法與數(shù)據(jù)結(jié)構(gòu)的同時,攻略中等難度的題目。 Create by jsliang on 2019-07-30 16:15:37 Recently revised in 2019-07-30 17:04:20 7 月下半旬攻略 45 道題,目前已攻略 100 題。 一 目錄 不折騰的前端,和咸魚有什么區(qū)別...
閱讀 2305·2021-09-30 09:47
閱讀 2223·2021-09-26 09:55
閱讀 2954·2021-09-24 10:27
閱讀 1543·2019-08-27 10:54
閱讀 971·2019-08-26 13:40
閱讀 2499·2019-08-26 13:24
閱讀 2423·2019-08-26 13:22
閱讀 1735·2019-08-23 18:38