javascript數(shù)組的內(nèi)置方法詳解
1.Array.at()
功能:接受一個(gè)整數(shù)值并返回該索引處的項(xiàng)目,允許正整數(shù)和負(fù)整數(shù)。負(fù)整數(shù)從數(shù)組中的最后一項(xiàng)開(kāi)始計(jì)數(shù)。
語(yǔ)法:Array.at(index)
參數(shù):index:要返回的數(shù)組元素的索引(位置)。當(dāng)傳遞一個(gè)負(fù)索引時(shí),支持從數(shù)組末尾開(kāi)始相對(duì)索引;即,如果使用負(fù)數(shù),將通過(guò)從數(shù)組末尾開(kāi)始倒數(shù)來(lái)找到返回的元素。
返回值:數(shù)組中與給定索引匹配的元素。undefined如果找不到給定的索引,則返回
<script type="text/javascript"> var arr = [1,2,3,4,5]; var newarr = arr.at(-1); console.log(newarr);// 5 var newarr = arr.at(3); console.log(newarr);// 4 </script>
2. Array.copyWithin()
功能:淺復(fù)制數(shù)組的一部分到同一數(shù)組中的另一個(gè)位置,并返回它,不會(huì)改變?cè)瓟?shù)組的長(zhǎng)度。
語(yǔ)法:arr.copyWithin(target[, start[, end]])
參數(shù):
target:
0 為基底的索引,復(fù)制序列到該位置。如果是負(fù)數(shù),target 將從末尾開(kāi)始計(jì)算。
如果 target 大于等于 arr.length,將會(huì)不發(fā)生拷貝。如果 target 在 start 之后,復(fù)制的序列將被 修改以符合 arr.length。
start:
0 為基底的索引,開(kāi)始復(fù)制元素的起始位置。如果是負(fù)數(shù),start 將從末尾開(kāi)始計(jì)算。
如果 start 被忽略,copyWithin 將會(huì)從0開(kāi)始復(fù)制。
end:
0 為基底的索引,開(kāi)始復(fù)制元素的結(jié)束位置。copyWithin 將會(huì)拷貝到該位置,但不包括 end 這 個(gè)位置的元素。如果是負(fù)數(shù), end 將從末尾開(kāi)始計(jì)算。
如果 end 被忽略,copyWithin 方法將會(huì)一直復(fù)制至數(shù)組結(jié)尾(默認(rèn)為 arr.length)
<script type="text/javascript"> var arr = [1,2,3,4,5]; var arr2= arr.copyWithin(-2) console.log(arr2); // [1, 2, 3, 1, 2] var arr3= arr.copyWithin(0, 3) console.log(arr3); // [4, 5, 3, 4, 5] var arr4= arr.copyWithin(0, 3, 4) console.log(arr4); // [4, 2, 3, 4, 5] var arr5= arr.copyWithin(-2, -3, -1) console.log(arr5); // [1, 2, 3, 3, 4] </script>
3. Array.entries()
功能:返回一個(gè)新的Array Iterator對(duì)象,該對(duì)象包含數(shù)組中每個(gè)索引的鍵/值對(duì)。
語(yǔ)法:arr.entries()
返回值:一個(gè)新的 Array 迭代器對(duì)象。Array Iterator是對(duì)象,它的原型(__proto__:Array Iterator)上有一個(gè)next方法,可用用于遍歷迭代器取得原數(shù)組的[key,value]。
<script type="text/javascript"> var array1 = ['a', 'b', 'c']; var iterator1 = array1.entries(); console.log(iterator1.next().value); // expected output: Array [0, "a"] console.log(iterator1.next().value); // expected output: Array [1, "b"] </script>
4. Array.fill()
功能:用一個(gè)固定值填充一個(gè)數(shù)組中從起始索引到終止索引內(nèi)的全部元素。不包括終止索引。
語(yǔ)法:arr.fill(target[, start[, end]])
參數(shù):
- value:用來(lái)填充數(shù)組元素的值。
- start :可選,起始索引,默認(rèn)值為0。
- end :可選,終止索引,默認(rèn)值為 this.length。
返回值:修改后的數(shù)組
<script type="text/javascript"> var array1 = [1, 2, 3, 4]; // fill with 0 from position 2 until position 4 console.log(array1.fill(0, 2, 4)); // expected output: [1, 2, 0, 0] // fill with 5 from position 1 console.log(array1.fill(5, 1)); // expected output: [1, 5, 5, 5] console.log(array1.fill(6)); // expected output: [6, 6, 6, 6] </script>
5.find()
功能:返回?cái)?shù)組中滿足提供的測(cè)試函數(shù)的第一個(gè)元素的值。否則返回 undefined。
語(yǔ)法:arr.find(callback[, thisArg])
參數(shù):
- callback:在數(shù)組每一項(xiàng)上執(zhí)行的函數(shù),接收 3 個(gè)參數(shù):
- element:當(dāng)前遍歷到的元素。
- index:可選,當(dāng)前遍歷到的索引。
- array:可選,數(shù)組本身。
- thisArg可選,執(zhí)行回調(diào)時(shí)用作this 的對(duì)象。
返回值:數(shù)組中第一個(gè)滿足所提供測(cè)試函數(shù)的元素的值,否則返回 undefined。
<script type="text/javascript"> var array1 = [5, 12, 8, 130, 44]; var found = array1.find(element => element > 10); console.log(found); // 12 </script>
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- 一篇文章帶你詳細(xì)了解JavaScript數(shù)組
- Javascript數(shù)組去重的幾種方法詳解
- 常用的JavaScript數(shù)組方法
- JavaScript數(shù)組詳細(xì)歸納
- JavaScript常用數(shù)組去重實(shí)戰(zhàn)源碼
- JavaScript如何監(jiān)測(cè)數(shù)組的變化
- JS對(duì)象數(shù)組去重的3種方法示例及對(duì)比
- JS實(shí)現(xiàn)數(shù)組過(guò)濾從簡(jiǎn)單到多條件篩選
- JavaScript數(shù)組reduce()方法的語(yǔ)法與實(shí)例解析
- 徒手實(shí)現(xiàn)關(guān)于JavaScript的24+數(shù)組方法
相關(guān)文章
細(xì)品javascript 尋址,閉包,對(duì)象模型和相關(guān)問(wèn)題
似乎某些程序員的集合是不相交的,就好像JS程序員和玩編譯原理和CPU指令的匯編程序員就幾乎沒(méi)有交叉。前些日子討論的火熱的“作用域鏈”問(wèn)題,說(shuō)白了就是尋址問(wèn)題,不過(guò),這個(gè)在C中十分簡(jiǎn)單的問(wèn)題卻被JS這個(gè)動(dòng)態(tài)語(yǔ)言弄得很復(fù)雜。2009-04-04
使用JS實(shí)現(xiàn)jQuery的addClass, removeClass, hasClass函數(shù)功能
這篇文章主要介紹了使用JS實(shí)現(xiàn)jQuery的addClass, removeClass, hasClass函數(shù)功能,需要的朋友可以參考下2014-10-10
echarts堆疊柱狀圖柱子之間間隔開(kāi)具體實(shí)現(xiàn)代碼
ECharts是一個(gè)強(qiáng)大的數(shù)據(jù)可視化庫(kù),它的堆疊柱狀圖通常用于比較各個(gè)分類的數(shù)據(jù)總量,這篇文章主要給大家介紹了echarts堆疊柱狀圖柱子之間間隔開(kāi)具體實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下2024-11-11
js+springMVC 提交數(shù)組數(shù)據(jù)到后臺(tái)的實(shí)例
今天小編就為大家分享一篇js+springMVC 提交數(shù)組數(shù)據(jù)到后臺(tái)的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-09-09
EasyUi combotree 實(shí)現(xiàn)動(dòng)態(tài)加載樹(shù)節(jié)點(diǎn)
這篇文章主要介紹了EasyUi combotree 實(shí)現(xiàn)動(dòng)態(tài)加載樹(shù)節(jié)點(diǎn)的相關(guān)資料,需要的朋友可以參考下2016-04-04
解決bootstrap-select 動(dòng)態(tài)加載數(shù)據(jù)不顯示的問(wèn)題
今天小編就為大家分享一篇解決bootstrap-select 動(dòng)態(tài)加載數(shù)據(jù)不顯示的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-08-08
JavaScript實(shí)現(xiàn)瀑布動(dòng)畫
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)瀑布動(dòng)畫,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-06-06

