前言

成都創(chuàng)新互聯(lián)公司專注于城陽(yáng)企業(yè)網(wǎng)站建設(shè),成都響應(yīng)式網(wǎng)站建設(shè)公司,成都商城網(wǎng)站開(kāi)發(fā)。城陽(yáng)網(wǎng)站建設(shè)公司,為城陽(yáng)等地區(qū)提供建站服務(wù)。全流程按需設(shè)計(jì)網(wǎng)站,專業(yè)設(shè)計(jì),全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)公司專業(yè)和態(tài)度為您提供的服務(wù)
從事前端到現(xiàn)在也有快兩年了,平時(shí)也會(huì)收集整理一些筆記放在印象筆記,不過(guò)收集過(guò)之后就在沒(méi)有看過(guò),經(jīng)大佬指點(diǎn),真正掌握一個(gè)知識(shí)點(diǎn),最好的方式就是用自己的話把內(nèi)容講明白,就開(kāi)始將以前零散的東西整合一下,和各位道友一起提高。
操作數(shù)組
印象中數(shù)組有很多方法,系統(tǒng)的整理一下,放在自己家里方便回頭查~
Array.map()
此方法是將數(shù)組中的每個(gè)元素調(diào)用一個(gè)提供的函數(shù),結(jié)果作為一個(gè)新的數(shù)組返回,并沒(méi)有改變?cè)瓉?lái)的數(shù)組
let arr = [1, 2, 3, 4, 5] let newArr = arr.map(x => x*2) //arr= [1, 2, 3, 4, 5] 原數(shù)組保持不變 //newArr = [2, 4, 6, 8, 10] 返回新數(shù)組
Array.forEach()
此方法是將數(shù)組中的每個(gè)元素執(zhí)行傳進(jìn)提供的函數(shù),沒(méi)有返回值,直接改變?cè)瓟?shù)組,注意和map方法區(qū)分
let arr = [1, 2, 3, 4, 5] num.forEach(x => x*2) // arr = [2, 4, 6, 8, 10] 數(shù)組改變,注意和map區(qū)分
Array.filter()
此方法是將所有元素進(jìn)行判斷,將滿足條件的元素作為一個(gè)新的數(shù)組返回
let arr = [1, 2, 3, 4, 5] const isBigEnough => value => value >= 3 let newArr = arr.filter(isBigEnough ) //newNum = [3, 4, 5] 滿足條件的元素返回為一個(gè)新的數(shù)組
Array.every()
此方法是將所有元素進(jìn)行判斷返回一個(gè)布爾值,如果所有元素都滿足判斷條件,則返回true,否則為false:
let arr = [1, 2, 3, 4, 5] const isLessThan4 => value => value < 4 const isLessThan6 => value => value < 6 arr.every(isLessThan4 ) //false arr.every(isLessThan6 ) //true
Array.some()
此方法是將所有元素進(jìn)行判斷返回一個(gè)布爾值,如果存在元素都滿足判斷條件,則返回true,若所有元素都不滿足判斷條件,則返回false:
let arr= [1, 2, 3, 4, 5] const isLessThan4 => value => value < 4 const isLessThan6 => value => value > 6 arr.some(isLessThan4 ) //true arr.some(isLessThan6 ) //false
Array.reduce()
此方法是所有元素調(diào)用返回函數(shù),返回值為最后結(jié)果,傳入的值必須是函數(shù)類型:
let arr = [1, 2, 3, 4, 5] const add = (a, b) => a + b let sum = arr.reduce(add) //sum = 15 相當(dāng)于累加的效果 與之相對(duì)應(yīng)的還有一個(gè) Array.reduceRight() 方法,區(qū)別是這個(gè)是從右向左操作的
Array.push()
此方法是在數(shù)組的后面添加新加元素,此方法改變了數(shù)組的長(zhǎng)度:
Array.pop()
此方法在數(shù)組后面刪除最后一個(gè)元素,并返回?cái)?shù)組,此方法改變了數(shù)組的長(zhǎng)度:
let arr = [1, 2, 3, 4, 5] arr.pop() console.log(arr) //[1, 2, 3, 4] console.log(arr.length) //4
Array.shift()
此方法在數(shù)組后面刪除第一個(gè)元素,并返回?cái)?shù)組,此方法改變了數(shù)組的長(zhǎng)度:
let arr = [1, 2, 3, 4, 5] arr.shift() console.log(arr) //[2, 3, 4, 5] console.log(arr.length) //4
Array.unshift()
此方法是將一個(gè)或多個(gè)元素添加到數(shù)組的開(kāi)頭,并返回新數(shù)組的長(zhǎng)度:
let arr = [1, 2, 3, 4, 5] arr.unshift(6, 7) console.log(arr) //[6, 7, 2, 3, 4, 5] console.log(arr.length) //7
Array.isArray()
判斷一個(gè)對(duì)象是不是數(shù)組,返回的是布爾值
Array.concat()
此方法是一個(gè)可以將多個(gè)數(shù)組拼接成一個(gè)數(shù)組:
let arr1 = [1, 2, 3] arr2 = [4, 5] let arr = arr1.concat(arr2) console.log(arr)//[1, 2, 3, 4, 5]
Array.toString()
此方法將數(shù)組轉(zhuǎn)化為字符串:
let arr = [1, 2, 3, 4, 5]; let str = arr.toString() console.log(str)// 1,2,3,4,5
Array.join()
此方法也是將數(shù)組轉(zhuǎn)化為字符串:
let arr = [1, 2, 3, 4, 5];
let str1 = arr.toString()
let str2 = arr.toString(',')
let str3 = arr.toString('##')
console.log(str1)// 12345
console.log(str2)// 1,2,3,4,5
console.log(str3)// 1##2##3##4##5通過(guò)例子可以看出和toString的區(qū)別,可以設(shè)置元素之間的間隔~(yú)
Array.splice(開(kāi)始位置, 刪除的個(gè)數(shù),元素)
萬(wàn)能方法,可以實(shí)現(xiàn)增刪改:
let arr = [1, 2, 3, 4, 5]; let arr1 = arr.splice(2, 0 'haha') let arr2 = arr.splice(2, 3) let arr1 = arr.splice(2, 1 'haha') console.log(arr1) //[1, 2, 'haha', 3, 4, 5]新增一個(gè)元素 console.log(arr2) //[1, 2] 刪除三個(gè)元素 console.log(arr3) //[1, 2, 'haha', 4, 5] 替換一個(gè)元素
結(jié)尾
第一次寫(xiě),都是很簡(jiǎn)單的數(shù)組用法,千里之行始于足下,重新把基礎(chǔ)夯實(shí)一下,如果存在錯(cuò)誤或者表達(dá)不當(dāng),還望及時(shí)告知,thx
以上所述是小編給大家介紹的js中數(shù)組常用方法總結(jié)詳解整合,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!
網(wǎng)站欄目:js中數(shù)組常用方法總結(jié)(推薦)
標(biāo)題鏈接:http://chinadenli.net/article6/ipsoog.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作、ChatGPT、網(wǎng)站改版、企業(yè)建站、網(wǎng)站營(yíng)銷、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)