摘要:在學(xué)習(xí)的道路上,數(shù)組是一個(gè)很重要的部分,數(shù)組的很多,也很容易混淆,每次對(duì)數(shù)組操作時(shí)都要去查文檔,學(xué)習(xí)的路上也不能一直前進(jìn),有時(shí)候要停下來(lái)做做總結(jié),我總結(jié)了平時(shí)比較常用的一些數(shù)組,希望能夠幫到你。如果沒(méi)有滿足條件的元素,則返回。
在學(xué)習(xí)JS的道路上,數(shù)組是一個(gè)很重要的部分,數(shù)組的API很多,也很容易混淆,每次對(duì)數(shù)組操作時(shí)都要去查文檔,學(xué)習(xí)的路上也不能一直前進(jìn),有時(shí)候要停下來(lái)做做總結(jié),我總結(jié)了平時(shí)比較常用的一些數(shù)組API,希望能夠幫到你。
arry.push()把一個(gè)元素增加到數(shù)組的末尾,返回值為新數(shù)組的長(zhǎng)度arry.length,示例:
let arry = [2, 9, 5] let returnValue = arry.push(4) console.log(returnValue) // 4 console.log(arry) // [2, 9, 5, 4]arry.pop()
刪除數(shù)組中最后一個(gè)元素,返回值為刪除的元素,示例:
let arry = [2, 9, 5] let returnValue = arry.pop() console.log(returnValue) // 5 console.log(arry) // [2, 9]arry.unshift()
與push方法類(lèi)似,區(qū)別在于它是在數(shù)組的前面添加元素,返回值為新數(shù)組的長(zhǎng)度arry.length,示例:
let arry = [2, 9, 5] let returnValue = arry.unshift(4) console.log(returnValue) // 4 console.log(arry) // [4, 2, 9, 5]arry.shift()
與pop方法類(lèi)似,區(qū)別在于它是刪除數(shù)組前面的元素,返回值依然是被刪除的元素,示例:
let arry = [2, 9, 5] let returnValue = arry.shift() console.log(returnValue) // 2 console.log(arry) // [9, 5]
由此可知,使用push和shift組合可以實(shí)現(xiàn)數(shù)據(jù)的‘先進(jìn)先出’當(dāng)然也可以使用unshift和pop
arry.reverse()把數(shù)組反向排序,這里要注意它會(huì)改變?cè)瓉?lái)的數(shù)組,而不會(huì)創(chuàng)建新的數(shù)組,示例:
let arry = [2, 9, 5] arry.reverse() console.log(arry) // [ 5, 9, 2 ]arry.sort()
對(duì)數(shù)組進(jìn)行排序,可接受參數(shù),參數(shù)必須是函數(shù),如果不沒(méi)有參數(shù) 則是按照字符編碼的順序進(jìn)行排序,示例:
let arry = [10, 5, 40, 1000] console.log(arry.sort()) // [ 10, 1000, 40, 5 ]
如果數(shù)字想要按大小排列,可寫(xiě)入?yún)?shù):
let arr = [3, 1, 7] console.log(arr.sort((a, b) => a - b)) // [ 1, 3, 7 ]arry.forEach(item, index)與arry.map(item, index)
兩者都是對(duì)數(shù)組遍歷,index表示數(shù)組索引,不是必須的參數(shù)區(qū)別在于map方法會(huì)返回一個(gè)新的數(shù)組,示例:
let arry = [1, 5, 10, 15]; let arry1 = arry.map( x => x + 2); console.log(arry1) // [ 3, 7, 12, 17 ]arry.some()
用于檢測(cè)數(shù)組中的元素是否滿足指定條件,參數(shù)也是函數(shù)如果有一個(gè)元素滿足條件,則表達(dá)式返回true , 剩余的元素不會(huì)再執(zhí)行檢測(cè)。如果沒(méi)有滿足條件的元素,則返回false。
let arry = [1, 5, 10, 15]; console.log(arry.some(item => item > 10)) // truearry.every()
用于檢測(cè)數(shù)組中的所有元素是否滿足指定條件,只有當(dāng)數(shù)組中滅一個(gè)元素都滿足條件時(shí),表達(dá)式返回true , 否則返回false,示例:
let arry = [5, 10, 15]; console.log(arry.every(item => item > 2)) // truearry.filter()
它創(chuàng)建一個(gè)新的數(shù)組,原數(shù)組不變,新數(shù)組中的元素是通過(guò)檢查指定數(shù)組中符合條件的所有元素,示例:
let arry = [1, 5, 10, 15]; let arry1 = arry.filter(item => item > 5) console.log(arry) // [ 1, 5, 10, 15 ] console.log(arry1) // [ 10, 15 ]arry.join()
把數(shù)組元素合并為一個(gè)字符串,如果不帶參數(shù),默認(rèn)用逗號(hào)分隔
let arry = [5, 10, 15]; console.log(arry.join()) // 5,10,15 // 添加參數(shù) let arry = [5, 10, 15]; console.log(arry.join(".")) // 5.10.15arry.splice(index, hm, add)
它既可以刪除特定的元素,也可以在特定位置增加元素,也可以刪除增加同時(shí)搞定,index是起始位置,hm是要?jiǎng)h除元素的個(gè)數(shù),add是要增加的元素,上例子:
let myFish = ["angel", "clown", "mandarin", "sturgeon"] myFish.splice(2, 0, "drum") // hm為0 表示不刪除任何元素 console.log(myFish) // [ "angel", "clown", "drum", "mandarin", "sturgeon" ]
let myFish = ["angel", "clown", "mandarin", "sturgeon"] myFish.splice(2, 1, "drum") console.log(myFish) // [ "angel", "clown", "drum", "sturgeon" ]arry.concat()
用于連接兩個(gè)或多個(gè)數(shù)組,返回值為連接后的新數(shù)組,原數(shù)組不變,示例:
let arry1 = [1, 2, 3] let arry2 = [4, 5, 6] arry1.concat(arry2) console.log(arry1.concat(arry2)) // [ 1, 2, 3, 4, 5, 6 ]
這些就是關(guān)于數(shù)組常用的api,可以大膽地添加收藏,以備不時(shí)之需~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/89865.html
摘要:返回?cái)?shù)組內(nèi)容的字符串表示形式將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,并用逗號(hào)連接。拍照連接符將數(shù)組中每個(gè)元素轉(zhuǎn)為字符串,用自定義的連接符連接每個(gè)元素需要用變量借助。 關(guān)于數(shù)組篇的記錄,純自己總結(jié),會(huì)持續(xù)更新~ 原生js方法 1:創(chuàng)建數(shù)組的幾種方法: var arr = []; var arr = new Array(); var arr = [1,2]; var arr = new Arr...
摘要:忍者級(jí)別的函數(shù)操作對(duì)于什么是匿名函數(shù),這里就不做過(guò)多介紹了。我們需要知道的是,對(duì)于而言,匿名函數(shù)是一個(gè)很重要且具有邏輯性的特性。通常,匿名函數(shù)的使用情況是創(chuàng)建一個(gè)供以后使用的函數(shù)。 JS 中的遞歸 遞歸, 遞歸基礎(chǔ), 斐波那契數(shù)列, 使用遞歸方式深拷貝, 自定義事件添加 這一次,徹底弄懂 JavaScript 執(zhí)行機(jī)制 本文的目的就是要保證你徹底弄懂javascript的執(zhí)行機(jī)制,如果...
摘要:寫(xiě)在前面金三銀四又到了一年一度的跳槽季相信大家都在準(zhǔn)備自己面試筆記我也針對(duì)自己工作中所掌握或了解的一些東西做了一個(gè)目錄總結(jié)方便自己復(fù)習(xí)詳細(xì)內(nèi)容會(huì)在之后一一對(duì)應(yīng)地補(bǔ)充上去有些在我的個(gè)人主頁(yè)筆記中也有相關(guān)記錄這里暫且放一個(gè)我的面試知識(shí)點(diǎn)目錄大家 寫(xiě)在前面: 金三銀四, 又到了一年一度的跳槽季, 相信大家都在準(zhǔn)備自己面試筆記, 我也針對(duì)自己工作中所掌握或了解的一些東西做了一個(gè)目錄總結(jié),方便自...
摘要:寫(xiě)在前面金三銀四又到了一年一度的跳槽季相信大家都在準(zhǔn)備自己面試筆記我也針對(duì)自己工作中所掌握或了解的一些東西做了一個(gè)目錄總結(jié)方便自己復(fù)習(xí)詳細(xì)內(nèi)容會(huì)在之后一一對(duì)應(yīng)地補(bǔ)充上去有些在我的個(gè)人主頁(yè)筆記中也有相關(guān)記錄這里暫且放一個(gè)我的面試知識(shí)點(diǎn)目錄大家 寫(xiě)在前面: 金三銀四, 又到了一年一度的跳槽季, 相信大家都在準(zhǔn)備自己面試筆記, 我也針對(duì)自己工作中所掌握或了解的一些東西做了一個(gè)目錄總結(jié),方便自...
摘要:前言本文基于,主要涉及基本概念基本配置和實(shí)際項(xiàng)目打包優(yōu)化。關(guān)于概念方面參考官網(wǎng),常用配置來(lái)自于網(wǎng)絡(luò)資源,在文末有相關(guān)參考鏈接,實(shí)踐部分基于自己的項(xiàng)目進(jìn)行優(yōu)化配置。同一文件中,修改某個(gè)影響其他。 前言:本文基于weboack4.x,主要涉及webpack4 基本概念、基本配置和實(shí)際項(xiàng)目打包優(yōu)化。關(guān)于概念方面參考官網(wǎng),常用配置來(lái)自于網(wǎng)絡(luò)資源,在文末有相關(guān)參考鏈接,實(shí)踐部分基于自己的項(xiàng)目進(jìn)行...
閱讀 3164·2021-11-22 14:45
閱讀 3314·2019-08-29 13:11
閱讀 2316·2019-08-29 12:31
閱讀 935·2019-08-29 11:21
閱讀 3002·2019-08-29 11:09
閱讀 3628·2019-08-28 18:11
閱讀 1433·2019-08-26 13:58
閱讀 1286·2019-08-26 13:27