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

join

把數(shù)組中所有元素放入一個(gè)字符串中止潮,返回字符串。

const arr = ['pr', 'is', 18];
console.log(arr.join(' ')); // pr is 18
console.log('=>');
console.log(arr); // [ 'pr', 'is', 18 ]

concat

連接多個(gè)(含兩個(gè))數(shù)組钞楼,兩邊的原始數(shù)組都不會(huì)變化喇闸,返回被連接數(shù)組的一個(gè)副本,可繼續(xù) concat询件。

const arr = [1, 2, 3, 4];
const arr1 = ['pr', 'is', 'a', 'boy'];
const arr2 = [5, 6, 7];
console.log(arr.concat(arr1, arr2).concat(8, 9)); // [1, 2, 3, 4, 'pr', 'is', 'a', 'boy', 5, 6, 7, 8, 9 ]
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

slice

從開(kāi)始到結(jié)束([)左閉右開(kāi)燃乍,即不包括結(jié)束)選擇數(shù)組的一部分淺拷貝到一個(gè)新數(shù)組。

const arr = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9];
console.log(arr.slice(1, 5)); // [ 1, 2, 3, 4 ]
console.log('=>');
console.log(arr); // [ 0,1,2,3,4,5,6,7,8,9 ]

map

創(chuàng)建一個(gè)新數(shù)組并返回宛琅,新數(shù)組的每個(gè)元素由原數(shù)組中的每一個(gè)元素執(zhí)行提供的函數(shù)而來(lái)刻蟹,其中原始數(shù)組不會(huì)發(fā)生改變。

const arr = [1, 2, 3, 4];
console.log(arr.map(i => i * 10 - 5)); // [ 5, 15, 25, 35 ]
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

every

檢測(cè)數(shù)組所有元素是否都符合指定條件.
如果數(shù)組中檢測(cè)到有一個(gè)元素不滿(mǎn)足夯秃,則整個(gè)表達(dá)式返回 false座咆,且剩余的元素不會(huì)再進(jìn)行檢測(cè);
如果所有元素都滿(mǎn)足條件仓洼,則返回 true介陶;

const arr = [1, 2, 3, 4];
console.log(arr.every(i => i > 2)); // false
console.log(arr.every(i => i > 0)); // true
console.log([].every(i => i === 'pr')); // true
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

some

用于檢測(cè)數(shù)組中的元素是否滿(mǎn)足指定條件。
如果有一個(gè)元素滿(mǎn)足條件色建,則表達(dá)式返回 true, 剩余的元素不會(huì)再執(zhí)行檢測(cè);
如果沒(méi)有滿(mǎn)足條件的元素哺呜,則返回 false;

const arr = [1, 2, 3, 4];
console.log(arr.some(i => i > 4)); // false
console.log(arr.some(i => i > 0)); // true
console.log([].some(i => i === 'pr')); // false
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

filter

創(chuàng)建一個(gè)新的數(shù)組,新數(shù)組中的元素是通過(guò)檢查符合條件的所有元素箕戳。

const arr = [1, 2, 3, 4];
console.log(arr.filter(i => i > 2)); // [3, 4]
console.log([].filter(i => i === 'pr')); // []
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

reduce

接收一個(gè)函數(shù)作為累加器某残,數(shù)組中的每個(gè)值(從左到右)開(kāi)始縮減,最終計(jì)算為一個(gè)值陵吸。若是空數(shù)組是不會(huì)執(zhí)行回調(diào)函數(shù)的;

const arr = [1, 2, 3, 4];
console.log(arr.reduce((prev, cur) => prev + cur, 0)); // 10
console.log('=>');
console.log(arr); // [ 1, 2, 3, 4 ]

返回新數(shù)組玻墅,改變?cè)瓟?shù)組

pop

刪除數(shù)組的最后一個(gè)元素,并返回這個(gè)元素(即被刪除的元素)壮虫。
如果數(shù)組為空澳厢,則不改變數(shù)組环础,返 undefined;

const arr = [1, 2, 3, 4];
const arr1 = [];
console.log(arr.pop()); // 4
console.log(arr1.pop()); // undefined
console.log('=>');
console.log(arr); // [ 1, 2, 3 ]
console.log(arr1); // []

push

將一個(gè)或多個(gè)元素添加到數(shù)組的末尾剩拢,返回值是改變后的數(shù)組的長(zhǎng)度线得。

const arr = [1, 2, 3, 4];
console.log(arr.shift()); // 1
console.log('=>');
console.log(arr); // [ 2, 3, 4 ]

shift

刪除數(shù)組的第一個(gè)元素,并返回這個(gè)元素徐伐。

const arr = [1, 2, 3, 4];
console.log(arr.shift()); // 1
console.log('=>');
console.log(arr); // [ 2, 3, 4 ]

unshift

將一個(gè)或多個(gè)元素添加到數(shù)組的開(kāi)頭贯钩,返回值是改變后的數(shù)組的長(zhǎng)度。

const arr = [1, 2, 3, 4];
console.log(arr.unshift(5, 6)); // 6
console.log(arr.unshift([1, 2])); // 7
console.log('=>');
console.log(arr); // [ [ 1, 2 ], 5, 6, 1, 2, 3, 4 ]

reverse

顛倒數(shù)組中元素的位置办素,返回該數(shù)組的引用角雷。

const arr = [1, 2, 3, 4];
const hello = 'hello';
const helloArray = hello.split('');
console.log(helloArray.reverse().join('')); // olleh
console.log(arr.reverse()); // [ 4, 3, 2, 1 ]
console.log('=>');
console.log(arr); // [ 4, 3, 2, 1 ]
console.log(helloArray); // [ 'o', 'l', 'l', 'e', 'h' ]

sort

對(duì)數(shù)組的元素進(jìn)行排序,并返回?cái)?shù)組摸屠。排序不一定是穩(wěn)定的谓罗。默認(rèn)排序順序是根據(jù)字符串 Unicode 碼點(diǎn)。

const arr = [1, 2, 3, 4, 10, 12, 22];
console.log(arr.sort()); // [ 1, 10, 12, 2, 22, 3, 4];
console.log('=>');
console.log(arr); // [ 1, 10, 12, 2, 22, 3, 4];

splice

向數(shù)組中添加/刪除項(xiàng)目季二,然后返回被刪除項(xiàng)目檩咱。

const arr = [1, 2, 3, 4];
console.log(arr.splice(1, 2, 10, 12)); // [ 2, 3 ]
console.log('=>');
console.log(arr); // [ 1, 10, 12, 4 ]
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市胯舷,隨后出現(xiàn)的幾起案子刻蚯,更是在濱河造成了極大的恐慌,老刑警劉巖桑嘶,帶你破解...
    沈念sama閱讀 211,290評(píng)論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件炊汹,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡逃顶,警方通過(guò)查閱死者的電腦和手機(jī)讨便,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評(píng)論 2 385
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)以政,“玉大人霸褒,你說(shuō)我怎么就攤上這事∮” “怎么了废菱?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,872評(píng)論 0 347
  • 文/不壞的土叔 我叫張陵,是天一觀(guān)的道長(zhǎng)抖誉。 經(jīng)常有香客問(wèn)我殊轴,道長(zhǎng),這世上最難降的妖魔是什么袒炉? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,415評(píng)論 1 283
  • 正文 為了忘掉前任旁理,我火速辦了婚禮,結(jié)果婚禮上我磁,老公的妹妹穿的比我還像新娘韧拒。我一直安慰自己淹接,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評(píng)論 6 385
  • 文/花漫 我一把揭開(kāi)白布叛溢。 她就那樣靜靜地躺著,像睡著了一般劲适。 火紅的嫁衣襯著肌膚如雪楷掉。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 49,784評(píng)論 1 290
  • 那天霞势,我揣著相機(jī)與錄音烹植,去河邊找鬼。 笑死愕贡,一個(gè)胖子當(dāng)著我的面吹牛草雕,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播固以,決...
    沈念sama閱讀 38,927評(píng)論 3 406
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼墩虹,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了憨琳?” 一聲冷哼從身側(cè)響起诫钓,我...
    開(kāi)封第一講書(shū)人閱讀 37,691評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎篙螟,沒(méi)想到半個(gè)月后菌湃,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,137評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡遍略,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評(píng)論 2 326
  • 正文 我和宋清朗相戀三年惧所,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片绪杏。...
    茶點(diǎn)故事閱讀 38,622評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡下愈,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出寞忿,到底是詐尸還是另有隱情驰唬,我是刑警寧澤,帶...
    沈念sama閱讀 34,289評(píng)論 4 329
  • 正文 年R本政府宣布腔彰,位于F島的核電站叫编,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏霹抛。R本人自食惡果不足惜搓逾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望杯拐。 院中可真熱鬧霞篡,春花似錦世蔗、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,741評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至余掖,卻和暖如春寸爆,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背盐欺。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,977評(píng)論 1 265
  • 我被黑心中介騙來(lái)泰國(guó)打工赁豆, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人冗美。 一個(gè)月前我還...
    沈念sama閱讀 46,316評(píng)論 2 360
  • 正文 我出身青樓魔种,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親粉洼。 傳聞我的和親對(duì)象是個(gè)殘疾皇子节预,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評(píng)論 2 348

推薦閱讀更多精彩內(nèi)容