2019-06-11 JS(Array對(duì)象)

(本文摘錄于阮一峰老師所寫文章,https://wangdoc.com/javascript/basic/index.html,作個(gè)人學(xué)習(xí)使用。)

image.png

構(gòu)造函數(shù)

1、Array作為構(gòu)造函數(shù),行為很不一致。因此,不建議使用它生成新數(shù)組,直接使用數(shù)組字面量是更好的做法。

靜態(tài)方法

2、Array.isArray()方法返回一個(gè)布爾值,表示參數(shù)是否為數(shù)組。它可以彌補(bǔ)typeof運(yùn)算符的不足,typeof只能返回object。

實(shí)例方法

3、
(1)valueOf(),toString():對(duì)象的通用方法,數(shù)組的valueOf方法返回?cái)?shù)組本身,數(shù)組的toString方法返回?cái)?shù)組的字符串形式。

(2)push(),pop():push方法用于在數(shù)組的末端添加一個(gè)或多個(gè)元素,并返回添加新元素后的數(shù)組長(zhǎng)度。注意,該方法會(huì)改變?cè)瓟?shù)組。pop方法用于刪除數(shù)組的最后一個(gè)元素,并返回該元素。注意,該方法會(huì)改變?cè)瓟?shù)組。兩者形成了一種棧結(jié)構(gòu)(stack)。

(3)shift(),unshift():shift()方法用于刪除數(shù)組的第一個(gè)元素,并返回該元素。注意,該方法會(huì)改變?cè)瓟?shù)組。unshift相反。shift與push可以組成隊(duì)列結(jié)構(gòu)(queue)。

(4)join():join()方法以指定參數(shù)作為分隔符,將所有數(shù)組成員連接為一個(gè)字符串返回。如果不提供參數(shù),默認(rèn)用逗號(hào)分隔。如果數(shù)組成員是undefined或null或空位,會(huì)被轉(zhuǎn)成空字符串。

(5)concat():concat方法用于多個(gè)數(shù)組的合并。它將新數(shù)組的成員,添加到原數(shù)組成員的后部,然后返回一個(gè)新數(shù)組,原數(shù)組不變。如果數(shù)組成員包括對(duì)象,concat方法返回當(dāng)前數(shù)組的一個(gè)淺拷貝。所謂“淺拷貝”,指的是新數(shù)組拷貝的是對(duì)象的引用。

(6)reverse():reverse方法用于顛倒排列數(shù)組元素,返回改變后的數(shù)組。注意,該方法將改變?cè)瓟?shù)組。

(7)slice():slice方法用于提取目標(biāo)數(shù)組的一部分,返回一個(gè)新數(shù)組,原數(shù)組不變。slice方法的一個(gè)重要應(yīng)用,是將類似數(shù)組的對(duì)象轉(zhuǎn)為真正的數(shù)組。
Array.prototype.slice.call({ 0: 'a', 1: 'b', length: 2 }) // ['a', 'b']

(8)splice():splice方法用于刪除原數(shù)組的一部分成員,并可以在刪除的位置添加新的數(shù)組成員,返回值是被刪除的元素。注意,該方法會(huì)改變?cè)瓟?shù)組。

(9)map():map方法將數(shù)組的所有成員依次傳入?yún)?shù)函數(shù),然后把每一次的執(zhí)行結(jié)果組成一個(gè)新數(shù)組返回。map方法的回調(diào)函數(shù)有三個(gè)參數(shù),elem為當(dāng)前成員的值,index為當(dāng)前成員的位置,arr為原數(shù)組([1, 2, 3])。

(10)forEach():forEach方法與map方法很相似,也是對(duì)數(shù)組的所有成員依次執(zhí)行參數(shù)函數(shù)。但是,forEach方法不返回值,只用來(lái)操作數(shù)據(jù)。這就是說(shuō),如果數(shù)組遍歷的目的是為了得到返回值,那么使用map方法,否則使用forEach方法。

(11)filter():filter方法用于過(guò)濾數(shù)組成員,滿足條件的成員組成一個(gè)新數(shù)組返回。它的參數(shù)是一個(gè)函數(shù),所有數(shù)組成員依次執(zhí)行該函數(shù),返回結(jié)果為true的成員組成一個(gè)新數(shù)組返回。該方法不會(huì)改變?cè)瓟?shù)組。

(12)reduce()、reduceRight():reduce方法和reduceRight方法依次處理數(shù)組的每個(gè)成員,最終累計(jì)為一個(gè)值。它們的差別是,reduce是從左到右處理(從第一個(gè)成員到最后一個(gè)成員),reduceRight則是從右到左(從最后一個(gè)成員到第一個(gè)成員),其他完全一樣。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 構(gòu)造函數(shù) Array是JavaScript的內(nèi)置對(duì)象,同時(shí)也是一個(gè)構(gòu)造函數(shù),可以用它生成新的數(shù)組。 上面代碼中,A...
    許先生__閱讀 340評(píng)論 0 1
  • 構(gòu)造函數(shù) Array是JavaScript的內(nèi)置對(duì)象,同時(shí)也是一個(gè)構(gòu)造函數(shù),可以用它生成新的數(shù)組。Array構(gòu)造函...
    zjh111閱讀 830評(píng)論 0 0
  • (一) 數(shù)組的定義 數(shù)組(array)是按次序排列的一組值。每個(gè)值的位置都有編號(hào)(從0開始),整個(gè)數(shù)組用方括號(hào)表示...
    woow_wu7閱讀 47,084評(píng)論 0 6
  • 1 構(gòu)造函數(shù) 上面代碼中,Array構(gòu)造函數(shù)的參數(shù)2,表示生成一個(gè)兩個(gè)成員的數(shù)組,每個(gè)位置都是空值。 如果沒(méi)有使用...
    徵羽kid閱讀 490評(píng)論 0 0
  • 一、不好用的構(gòu)造函數(shù) Array是JS的內(nèi)置對(duì)象,同時(shí)也是一個(gè)構(gòu)造函數(shù),可以用它生成新的數(shù)組。但是由于Array作...
    周花花啊閱讀 377評(píng)論 1 1

友情鏈接更多精彩內(nèi)容