最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

javascript中一些數(shù)組常用的API總結(jié)

 更新時(shí)間:2023年09月15日 09:01:30   作者:前端技術(shù)棧  
Js中數(shù)組是一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),它相比于字符串有更多的方法,本篇文章總結(jié)了一些數(shù)組中常用的API,我們把它們分成兩類,一類是會改變原始數(shù)組,一類是不會改變原始數(shù)組,感興趣的小伙伴可以學(xué)習(xí)一下

前言

Js中數(shù)組是一個(gè)重要的數(shù)據(jù)結(jié)構(gòu),它相比于字符串有更多的方法,在一些算法題中我們經(jīng)常需要將字符串轉(zhuǎn)化為數(shù)組,使用數(shù)組里面的API進(jìn)行操作。本篇文章總結(jié)了一些數(shù)組中常用的API,我們把它們分成兩類,一類是會改變原始數(shù)組,一類是不會改變原始數(shù)組;一起來看一下吧。

會改變原數(shù)組

Js中數(shù)組有一些方法可以直接改變原始數(shù)組。

push()

push()方法是在數(shù)組的末尾添加一個(gè)或多個(gè)元素,并且返回改變后數(shù)組的長度。

用法:

let arr = [1, 2, 3, 4, 5]
let res = arr.push(6, 7)
console.log(res);//7
console.log(arr);//[1, 2, 3, 4, 5, 6, 7]

pop()和shift()

這兩個(gè)方法都是刪除數(shù)組中的元素,pop()方法是將數(shù)組中最后一個(gè)元素刪除,shift()方法是將數(shù)組中第一個(gè)元素從數(shù)組中刪除,都返回刪除的那一項(xiàng)。

用法:

let arr = [1, 2, 3, 4, 5]
let res = arr.pop()
console.log(res);//5
console.log(arr);//[ 1, 2, 3, 4 ]
let res2 = arr.shift()
console.log(res2);//1
console.log(arr);//[ 2, 3, 4 ]

unshift()

unshift()方法向數(shù)組的開頭添加一個(gè)或多個(gè)元素,并且返回改變后數(shù)組的長度。

用法:

let arr = [1, 2, 3, 4, 5]
let res = arr.unshift(0, 11)
console.log(res);//7
console.log(arr);//[ 0, 11, 1, 2, 3,  4, 5]

splice()

splice()方法添加或刪除數(shù)組中的元素,有返回值,以數(shù)組形式返回刪除的元素,沒有刪除則返回空數(shù)組。

用法:splice可以接收三個(gè)參數(shù), splice(index, n, x)

index: 要刪除或插入元素的位置, 該參數(shù)是必需的。

n: 要刪除的元素個(gè)數(shù), 如果不想刪除任何元素, 可以將該參數(shù)設(shè)置為0。

x:要插入到數(shù)組中的新元素,可以是多個(gè)x1,x2,x3...如果不想插入任何元素,則可以省略這些參數(shù)。

let arr = [1, 2, 3, 4, 5]
let res = arr.splice(1, 2, 6, 7, 8)
console.log(res);//[ 2, 3 ]
console.log(arr);//[ 1, 6, 7, 8, 4, 5 ]
let res2 = arr.splice(1, 0, 8)
console.log(res2);//[]
console.log(arr);//[1, 8, 6, 7, 8, 4, 5]

sort()

sort()方法可以對數(shù)組的元素進(jìn)行排序,并且返回出排序后的數(shù)組。

用法:sort()默認(rèn)為升序排列。 直接寫sort()只能處理10以內(nèi)的數(shù)字排序,處理10以上的我們需要傳遞一個(gè)參數(shù),這個(gè)參數(shù)必須是函數(shù),函數(shù)通過返回一個(gè)值來決定這兩個(gè)值需不需要交換位置。 如果a-b > 0,則a和b交換位置。

 let arr = [10, 12, 11, 19, 13, 15, 6];
let res1 = arr.sort(function (a, b) { return a - b; });   //實(shí)現(xiàn)由小到大
console.log(res1);//[6, 10, 11, 12,13, 15, 19]
let res2 = arr.sort(function (a, b) { return b - a; })   //實(shí)現(xiàn)由大到小
console.log(res2);//[19, 15, 13, 12,11, 10,  6]

reverse()

reverse()方法可以顛倒數(shù)組中元素的順序,并且返回顛倒后的數(shù)組。

用法:

let arr = [1, 2, 3, 4, 5]
let res = arr.reverse()
console.log(res);//[ 5, 4, 3, 2, 1 ]
console.log(arr);//[ 5, 4, 3, 2, 1 ]

不會改變原數(shù)組

Js中數(shù)組有一些方法不會直接改變原始數(shù)組,會返回出一個(gè)新的數(shù)組。

slice()

slice() 方法可提取數(shù)組的某些元素,并以新的數(shù)組返回被提取的元素。

用法:slice(n,m) 從索引n(包含n)開始找到索引m(不包含m)處。把找到的內(nèi)容作為一個(gè)新的數(shù)組返回,原有數(shù)組是不改變的。

let arr = [1, 2, 3, 4, 5]
let res = arr.slice(2, 4)
console.log(res);//[ 3, 4 ]
console.log(arr);//[ 1, 2, 3, 4, 5 ]
slice(n)// 從索引n(包含n)開始找到末尾
slice(0)  // slice()  將原來數(shù)組原封不動的復(fù)制一份

concat()

concat ()方法用于連接兩個(gè)或多個(gè)數(shù)組,該方法不會改變現(xiàn)有的數(shù)組,而僅僅會返回被連接數(shù)組的一個(gè)副本。

用法:

let arr1 = [1, 2, 3, 4, 5]
let arr2 = [7, 8]
let res = arr1.concat(arr2)
console.log(res);//[ 1, 2, 3, 4, 5, 7, 8]
console.log(arr1);//[ 1, 2, 3, 4, 5 ]
console.log(arr2);//[ 7, 8 ]

filter()

filter()用于對數(shù)組進(jìn)行過濾。

用法:它創(chuàng)建一個(gè)新數(shù)組,新數(shù)組中的元素是通過檢查指定數(shù)組中符合條件的所有元素。其中函數(shù)function 為必須,數(shù)組中的每個(gè)元素都會執(zhí)行這個(gè)函數(shù)。且如果返回值為true,則該元素被保留;函數(shù)可以接受三個(gè)參數(shù)(item, index, arr),第一個(gè)參數(shù)item也為必須,代表當(dāng)前元素的值,第二個(gè)參數(shù)為當(dāng)前元素的索引值,第三個(gè)參數(shù)為數(shù)組本身。

const arr = [
    { name: 'song', age: 18 },
    { name: 'Y', age: 19 },
    { name: 'son', age: 20 },
    { name: 'so', age: 21 }
]
const newArr = arr.filter((item, index, arr) => {
    return item.age > 19
})
console.log(newArr);//[ { name: 'son', age: 20 }, { name: 'so', age: 21 } ]
console.log(arr);//[ { name: 'song', age: 18 },{ name: 'Y', age: 19 },
                 //{ name: 'son', age: 20 }, { name: 'so', age: 21 }]

forEach()

forEach()方法用于調(diào)用數(shù)組的每個(gè)元素,并將元素傳遞給回調(diào)函數(shù)。

用法:回調(diào)函數(shù)中可以接受三個(gè)參數(shù)(item,index,arr),第一個(gè)參數(shù)item也為必須,代表當(dāng)前元素的值,第二個(gè)參數(shù)為當(dāng)前元素的索引值,第三個(gè)參數(shù)為數(shù)組本身。

const arr = [
    { name: 'song', age: 18 },
    { name: 'Y', age: 19 },
    { name: 'son', age: 20 },
    { name: 'so', age: 21 }
]
arr.my_forEach((item, index, arr) => {
    console.log(item.age);//18 19 20 21
})
console.log(arr);//[ { name: 'song', age: 18 }, { name: 'Y', age: 19 },
    //{ name: 'son', age: 20 },{ name: 'so', age: 21 } ]

toString

toString 把數(shù)組中的每一項(xiàng)拿出來,用逗號隔開,組成字符串,原有數(shù)組不變。

用法:

let arr = ['song', 'Y', 'son', 'so']
let res = arr.toString()
console.log(res);//'song,Y,son,so'
console.log(arr);//[ 'song', 'Y', 'son', 'so' ]

join(分隔符)

join(分隔符) 把數(shù)組中的每一項(xiàng)拿出來,用指定的分隔符隔開,原有數(shù)組不變。

用法:

let arr = ['song', 'Y', 'son', 'so']
let res = arr.join(',')
console.log(res);//'song,Y,son,so'
console.log(res.length);//13
console.log(arr);//[ 'song', 'Y', 'son', 'so' ]
console.log(arr.length);//4

小結(jié)

Js中數(shù)組的方法不只這么一些,比如還有一些遍歷的方法:map,reduce,find,every等等,我們需要知道。

到此這篇關(guān)于javascript中一些數(shù)組常用的API總結(jié)的文章就介紹到這了,更多相關(guān)javascript數(shù)組API內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 前端判斷節(jié)假日的詳細(xì)代碼舉例

    前端判斷節(jié)假日的詳細(xì)代碼舉例

    因?yàn)橐鲆粋€(gè)日歷控件,遇到國家法定節(jié)假日,怎么實(shí)現(xiàn)此功能呢?這篇文章主要給大家介紹了關(guān)于前端判斷節(jié)假日的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • JS實(shí)現(xiàn)圖片幻燈片效果代碼實(shí)例

    JS實(shí)現(xiàn)圖片幻燈片效果代碼實(shí)例

    這篇文章主要介紹了JS實(shí)現(xiàn)圖片幻燈片效果代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-05-05
  • JavaScript實(shí)現(xiàn)文件下載并重命名代碼實(shí)例

    JavaScript實(shí)現(xiàn)文件下載并重命名代碼實(shí)例

    這篇文章主要介紹了JavaScript實(shí)現(xiàn)文件下載并重命名代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 微信小程序使用ECharts的示例詳解

    微信小程序使用ECharts的示例詳解

    echarts-for-weixin是ECharts官方維護(hù)的一個(gè)開源項(xiàng)目,提供了一個(gè)微信小程序組件,可以通過這個(gè)組件在微信小程序中使用?ECharts?繪制圖表。本文將通過示例詳解微信小程序使用ECharts的方法,感興趣的可以了解一下
    2022-06-06
  • 非常不錯(cuò)的彈出一個(gè)div的js代碼

    非常不錯(cuò)的彈出一個(gè)div的js代碼

    看代碼主要是用css控制div的顯示和div的顯示位置和式樣的代碼
    2008-06-06
  • JavaScript中“基本類型”之爭小結(jié)

    JavaScript中“基本類型”之爭小結(jié)

    所謂“基本類型(primitive types)”的概念ECMAScript(V3,V5)中壓根就沒有,它只是將類型分為6種,感興趣的朋友可以參考下
    2013-01-01
  • 小程序點(diǎn)餐頁吸頂滾動實(shí)現(xiàn)完整代碼

    小程序點(diǎn)餐頁吸頂滾動實(shí)現(xiàn)完整代碼

    :原生小程序吸頂功能能夠自動吸附在頂部,無需用戶手動滑動返回,提高了用戶瀏覽頁面的流暢度和便捷性,下面這篇文章主要介紹了小程序點(diǎn)餐頁吸頂滾動實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2026-05-05
  • Ionic默認(rèn)的Tabs模板使用實(shí)例

    Ionic默認(rèn)的Tabs模板使用實(shí)例

    這篇文章主要為大家詳細(xì)介紹了Ionic默認(rèn)的Tabs模板使用實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-08-08
  • 12 款 JS 代碼測試必備工具(翻譯)

    12 款 JS 代碼測試必備工具(翻譯)

    這篇文章主要介紹了12 款 JS 代碼測試必備工具(翻譯),需要的朋友可以參考下
    2016-12-12
  • 分享20個(gè)JavaScript?單行代碼

    分享20個(gè)JavaScript?單行代碼

    這篇文章主要給大家分享了20個(gè)JavaScript?單行代碼,JavaScript單行代碼殺手锏,可以讓工作更有效率哦,需要的朋友可以參考一下,希望對你的學(xué)習(xí)有所幫助
    2021-12-12

最新評論

贞丰县| 吉林省| 旬邑县| 双柏县| 山西省| 扎赉特旗| 赤水市| 河间市| 海城市| 涞源县| 长白| 凤翔县| 康定县| 三门县| 伊金霍洛旗| 石城县| 航空| 黄山市| 农安县| 子长县| 兰考县| 晋宁县| 平定县| 永丰县| 乌鲁木齐县| 苏州市| 齐河县| 拉萨市| 怀仁县| 漳州市| 张北县| 朝阳市| 杭锦旗| 松溪县| 沁源县| 定兴县| 沅江市| 凤山县| 文昌市| 电白县| 湖口县|