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)文章
使用 Opentype.js 生成字體子集的實(shí)例代碼詳解
這篇文章主要介紹了使用 Opentype.js 生成字體子集,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-05-05BootStrap實(shí)現(xiàn)響應(yīng)式布局導(dǎo)航欄折疊隱藏效果(在小屏幕、手機(jī)屏幕瀏覽時(shí)自動(dòng)折疊隱藏)
這篇文章主要介紹了BootStrap實(shí)現(xiàn)導(dǎo)航欄的響應(yīng)式布局,當(dāng)在小屏幕、手機(jī)屏幕瀏覽時(shí)自動(dòng)折疊隱藏的效果,非常不錯(cuò),具有參考借鑒價(jià)值,對(duì)bootstrap 響應(yīng)式布局導(dǎo)航欄功能感興趣的朋友一起學(xué)習(xí)吧2016-11-11微信小程序?qū)崿F(xiàn)簡(jiǎn)單的select下拉框
這篇文章主要為大家詳細(xì)介紹了微信小程序?qū)崿F(xiàn)簡(jiǎn)單的select下拉框,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-11-11AJAX 網(wǎng)頁(yè)保留瀏覽器前進(jìn)后退等功能
AJAX的應(yīng)用較少了頁(yè)面的刷新次數(shù),但是也可能會(huì)使瀏覽器的前進(jìn)、后退、刷新等功能受到影響。2011-02-02three.js創(chuàng)造時(shí)空裂縫特效實(shí)現(xiàn)示例
這篇文章主要為大家介紹了three.js創(chuàng)造時(shí)空裂縫特效實(shí)現(xiàn)示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11js+html5實(shí)現(xiàn)canvas繪制網(wǎng)頁(yè)時(shí)鐘的方法
這篇文章主要介紹了js+html5實(shí)現(xiàn)canvas繪制網(wǎng)頁(yè)時(shí)鐘的方法,涉及html5圖形繪制的基礎(chǔ)技巧,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-05-05