成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

JavaScript數(shù)組方法總結(jié)

Forest10 / 1375人閱讀

摘要:如重排序方法它的原理是先調(diào)用數(shù)組的方法,之后再進(jìn)行字符串的比較。長度為的數(shù)組。返回的是被刪除的項(xiàng),如果沒刪除則返回空數(shù)組,而且之前的數(shù)組也被改變位置方法可以檢測變量,它的兩個(gè)參數(shù)是第一個(gè)是要查找的值或變量,第二個(gè)是從哪開始找。

length屬性方法

數(shù)組的length屬性不單單是只讀的,還可以寫入
var color = [‘red’,’blue’,’black’];
Color.length = 1; // red
Color.length = 4
Console.log(color[2]) //undefined

檢測數(shù)組方法

當(dāng)有不同模塊時(shí),數(shù)組在不同模塊的表現(xiàn)是不同的構(gòu)造函數(shù),這時(shí)候instanceof也會判斷失誤,這時(shí)候要用更精確的方法
Array.isArray(value)

轉(zhuǎn)換方法

toString() -> 可以將一個(gè)數(shù)組轉(zhuǎn)化成“,”分割的形式,如[1,2,3,4].toString() -> “1,2,3,4”

join()方法和toString()一樣,只是join()里面可以添加參數(shù),默認(rèn)是逗號,如[1,2,3,4].join(‘-") -> “1-2-3-4”

上面這個(gè)數(shù)組對于數(shù)組中嵌套這數(shù)組的情況,也能默認(rèn)拆到底。如[1,2,3,[4,[5,6,[7,8]]]].toString() -> “1,2,3,4,5,6,7,8"

重排序方法

reverse()

sort() : 它的原理是先調(diào)用數(shù)組的toString()方法,之后再進(jìn)行字符串的比較。所以應(yīng)該這么寫

arr.sort((val1,val2) => val1-val2)

操作方法

Concat():concat()方法不會影響之前數(shù)組的值

Slice() : 如果是負(fù)值,則用數(shù)組的長度去和數(shù)值相加。e.g: 長度為5的數(shù)組 arr.slice(-2,-1) === arr.slice(3,4)。slice有個(gè)技巧,其實(shí)后面兩個(gè)參數(shù)差的值就是數(shù)組里留的數(shù)量,比如[1,2,3,4,5].slice(1,4),截取出來的數(shù)組長度就是3。

Splice() : 返回的是被刪除的項(xiàng),如果沒刪除則返回空數(shù)組,而且之前的數(shù)組也被改變

位置方法

indexOf:可以檢測變量,它的兩個(gè)參數(shù)是第一個(gè)是要查找的值或變量,第二個(gè)是從哪開始找。
var person = {name:"andy",age:25};
var a = [{name:"andy",age:25}];
var b = [person];
console.log(a.indexOf(person)) // -1
console.log(b.indexOf(person)) //0

find()和findIndex():他們的參數(shù)必須為函數(shù),可直接返回滿足條件的值和序號,還可以結(jié)合Object.is(),辨別NAN的位置
[1,2,3,4].find((n) => n>2)

迭代方法

有5個(gè)迭代方法,每個(gè)方法都接收兩個(gè)參數(shù)。第一個(gè)參數(shù)是一個(gè)函數(shù)第二個(gè)參數(shù)是函數(shù)的作用域?qū)ο?可選)-影響this值,其中第一個(gè)參數(shù)的函數(shù)又有三個(gè)參數(shù)(item,index,arrSelf)。這5個(gè)方法都不會改變數(shù)組本身。

方法 一個(gè)普通標(biāo)題 一個(gè)普通標(biāo)題
every() Boolean 循環(huán)次數(shù):碰到是flase的直接終止循環(huán)
some() Boolean 循環(huán)次數(shù):碰到是true的直接終止循環(huán)
forEach() 無返回值 和for循環(huán)迭代數(shù)組一樣,沒有返回值
map() 返回每次函數(shù)調(diào)用的結(jié)果組成的數(shù)組 適用于包含項(xiàng)與另一個(gè)數(shù)組一一對應(yīng)的數(shù)組
filter() 返回true所組成的數(shù)組 查詢符合條件的所有數(shù)組很有用
歸并方法

reduce()和reduceRight (),這兩個(gè)沒區(qū)別就是一從頭到尾,一個(gè)從尾到頭。
他們的參數(shù)意義:
第一個(gè)參數(shù):function (pre,cur,index,arrSelf)
第二個(gè)參數(shù):pre的初始值,如果這個(gè)參數(shù)沒有,那么pre的初始值就是數(shù)組的第0個(gè)元素,例子:

let arr2 = [1,2,3];
let arr2All = arr2.reduce((pre,cur,index,arr) => {
console.log("pre: "+ pre)
console.log("cur: "+ cur)
console.log("index: "+ index)
console.log("arr: "+ arr)
return cur + pre;
},5)

let arr2 = [1,2,3];
var arr2All = arr2.reduce((pre,cur,index,arr) => {
console.log("pre: "+ pre)
console.log("cur: "+ cur)
console.log("index: "+ index)
console.log("arr: "+ arr)
return cur + pre;
})
Es6中數(shù)組的方法 Array.from()和擴(kuò)展運(yùn)算符(...)

它可以將類數(shù)組(本質(zhì)特點(diǎn)必須有一點(diǎn),有l(wèi)ength屬性)和可遍歷對象(連字符串都可以)都轉(zhuǎn)化為數(shù)組e.g:
在實(shí)際應(yīng)用中一般類數(shù)組對象都是獲取的DOM的NodeList集合,如getElementByTagName()...

let arrLike = {
"0":"a",
"1":"b",
"2":"c",
length:3
}
str = [].slice.call("abc")
var arr = [].slice.call(arrLike) // [‘a(chǎn)’,’b’,’c’] -> es5的寫法
var arr1 = Array.from(arrLike) // [‘a(chǎn)’,’b’,’c’]
var arr2 = […arrLike] //擴(kuò)展運(yùn)算符不能有這種效果
var arr3 = Array.from("arrLike’) // [‘a(chǎn)’,’r’,’r’,’L’,’i’,’k’,’e"]
Includes()

和indexOf不同點(diǎn):

他直接返回了true和false

語義化比較好

對于NAN的判斷 indexOf內(nèi)部使用嚴(yán)格相等,會導(dǎo)致NAN判斷錯(cuò)誤,而include使用的是不一樣的判斷方法,沒有問題,[NaN].include(NaN) -> 0

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/96509.html

相關(guān)文章

  • JavaScript基礎(chǔ)總結(jié)(三)——數(shù)組總結(jié)

    摘要:關(guān)于中的數(shù)組做出了如下總結(jié)數(shù)組是用來存儲一組不同類型的數(shù)據(jù)的容器??梢允褂脴?gòu)造函數(shù)的方法和字面量的方法來聲明函數(shù)訪問數(shù)組通過下標(biāo)的方法來訪問可以獲得數(shù)組長度。 關(guān)于JavaScript中的數(shù)組做出了如下總結(jié):1、數(shù)組是用來存儲一組不同類型的數(shù)據(jù)的容器??梢允褂脴?gòu)造函數(shù)的方法和字面量的方法來聲明函數(shù);訪問數(shù)組通過下標(biāo)的方法來訪問;arr.length可以獲得數(shù)組長度。2、數(shù)組棧方法包括:...

    enda 評論0 收藏0
  • JavaScript學(xué)習(xí)總結(jié)(六)數(shù)據(jù)類型和JSON格式

    摘要:并列數(shù)據(jù)的集合數(shù)組用方括號表示。第三種類型是映射,也就是一個(gè)名值對,即數(shù)據(jù)有一個(gè)名稱,還有一個(gè)與之相對應(yīng)的值,這又稱作散列或字典,比如首都北京。中有種簡單數(shù)據(jù)類型也稱為基本數(shù)據(jù)類型和。數(shù)值布爾值對象和字符串值都有方法。 什么是JSON JSON:JavaScript 對象表示法(JavaScript Object Notation)。 JSON的形式是用大括號{}包圍起來的項(xiàng)目列表...

    laznrbfe 評論0 收藏0
  • Javascript基礎(chǔ)之Array數(shù)組API

    摘要:數(shù)組原型提供的方法非常之多,主要分為三種直接修改原數(shù)組原數(shù)組不變,返回新數(shù)組數(shù)組遍歷方法直接修改原數(shù)組的刪除一個(gè)數(shù)組中的最后的一個(gè)元素,并且返回這個(gè)元素添加一個(gè)或者多個(gè)元素到數(shù)組末尾,并且返回?cái)?shù)組新的長度刪除數(shù)組的第一個(gè)元素,并返回這個(gè)元素 Javascript數(shù)組原型提供的方法非常之多,主要分為三種: 直接修改原數(shù)組 原數(shù)組不變,返回新數(shù)組 數(shù)組遍歷方法 直接修改原數(shù)組的API ...

    hsluoyz 評論0 收藏0
  • JavaScript遍歷對象和數(shù)組方法總結(jié)

    摘要:日常開發(fā)中我們難免需要對數(shù)組和對象進(jìn)行遍歷,今天抽空來總結(jié)下遍歷數(shù)組和對象常用的方法。使用遍歷對象注只能遍歷出自身可枚舉的屬性,而不能遍歷出原型鏈上面的屬性。 日常開發(fā)中我們難免需要對數(shù)組和對象進(jìn)行遍歷,今天抽空來總結(jié)下遍歷數(shù)組和對象常用的方法。 Javascript遍歷數(shù)組總結(jié) 我們定義一個(gè)數(shù)組 var arr = [2,4,6]; 1.使用for循環(huán)遍歷 var lengt...

    jiekechoo 評論0 收藏0
  • JS程序

    摘要:設(shè)計(jì)模式是以面向?qū)ο缶幊虨榛A(chǔ)的,的面向?qū)ο缶幊毯蛡鹘y(tǒng)的的面向?qū)ο缶幊逃行┎顒e,這讓我一開始接觸的時(shí)候感到十分痛苦,但是這只能靠自己慢慢積累慢慢思考。想繼續(xù)了解設(shè)計(jì)模式必須要先搞懂面向?qū)ο缶幊?,否則只會讓你自己更痛苦。 JavaScript 中的構(gòu)造函數(shù) 學(xué)習(xí)總結(jié)。知識只有分享才有存在的意義。 是時(shí)候替換你的 for 循環(huán)大法了~ 《小分享》JavaScript中數(shù)組的那些迭代方法~ ...

    melody_lql 評論0 收藏0
  • 關(guān)于javascript數(shù)組方法總結(jié)

    摘要:關(guān)于數(shù)組方法的總結(jié)以此數(shù)組為操作對象以下方法不改變原數(shù)組只是數(shù)組的轉(zhuǎn)換字符串使用括號中的字符串連接數(shù)組中的每個(gè)元素,返回一個(gè)連接好的字符串,不改變原數(shù)組可以將數(shù)組轉(zhuǎn)換成字符串形式,返回字符串,不改變原數(shù)組。 關(guān)于數(shù)組方法的總結(jié) 【arr(1,2,3,4);以此數(shù)組為操作對象;】 以下方法不改變原數(shù)組(只是數(shù)組的轉(zhuǎn)換) arr.join(字符串): 使用括號中的字符串連接數(shù)組中的每個(gè)元...

    Yi_Zhi_Yu 評論0 收藏0

發(fā)表評論

0條評論

Forest10

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<