ES6中Array.copyWithin()函數(shù)的用法實(shí)例詳解
ES6為Array增加了copyWithin函數(shù),用于操作當(dāng)前數(shù)組自身,用來把某些個位置的元素復(fù)制并覆蓋到其他位置上去。
Array.prototype.copyWithin(target, start = 0, end = this.length)
該函數(shù)有三個參數(shù)。
target:目的起始位置。
start:復(fù)制源的起始位置,可以省略,可以是負(fù)數(shù)。
end:復(fù)制源的結(jié)束位置,可以省略,可以是負(fù)數(shù),實(shí)際結(jié)束位置是end-1。
例:
把第3個元素(從0開始)到第5個元素,復(fù)制并覆蓋到以第1個位置開始的地方。
下面的紅色塊是復(fù)制目標(biāo)的起始位置,黃色塊為復(fù)制的源。
const arr1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] arr1.copyWithin(1, 3, 6) console.log('%s', JSON.stringify(arr1))
結(jié)果:
[1,4,5,6,5,6,7,8,9,10,11]
start和end都是可以省略。
start省略表示從0開始,end省略表示數(shù)組的長度值。
目標(biāo)的位置不夠的,能覆蓋多少就覆蓋多少。
const arr2 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] arr2.copyWithin(3) console.log('%s', JSON.stringify(arr2))
結(jié)果:
[1,2,3,1,2,3,4,5,6,7,8]
start和end都可以是負(fù)數(shù),負(fù)數(shù)表示從右邊數(shù)過來第幾個。
const arr3 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11] arr3.copyWithin(3, -3, -2) console.log('%s', JSON.stringify(arr3))
結(jié)果:
[1,2,3,9,5,6,7,8,9,10,11]
總結(jié)
以上所述是小編給大家介紹的ES6中Array.copyWithin()函數(shù)的用法實(shí)例詳解,希望對大家有所幫助,如果大家有任何疑問歡迎給我留言,小編會及時回復(fù)大家的!
相關(guān)文章
JS獲取指定月份的天數(shù)兩種實(shí)現(xiàn)方法
這篇文章主要介紹了JS獲取指定月份的天數(shù)兩種實(shí)現(xiàn)方法,需要的朋友可以參考下2018-06-06javascript獲取和判斷瀏覽器窗口、屏幕、網(wǎng)頁的高度、寬度等
這篇文章主要介紹了javascript獲取和判斷瀏覽器窗口、屏幕、網(wǎng)頁的高度、寬度等,需要的朋友可以參考下2014-05-05js實(shí)現(xiàn)點(diǎn)小圖看大圖效果的思路及示例代碼
點(diǎn)小圖看大圖的效果想必很多的朋友都有見到過吧,下面有個不錯的示例,感興趣的朋友可以參考下2013-10-10Easy.Ajax 部分源代碼 支持文件上傳功能, 兼容所有主流瀏覽器
下面是Easy.Ajax類的初稿,如須發(fā)表,在代碼上還要修改以達(dá)到最簡,但API是不會變了2011-02-02JavaScript模塊管理的簡單實(shí)現(xiàn)方式詳解
這篇文章主要介紹了JavaScript模塊管理的簡單實(shí)現(xiàn)方式,它方便組織你的代碼,提高項(xiàng)目的可維護(hù)性。一個項(xiàng)目的可維護(hù)性高不高,也體現(xiàn)一個程序員的水平,在如今越來越復(fù)雜的前端項(xiàng)目,這一點(diǎn)尤為重要。,需要的朋友可以參考下2019-06-06兼容ie ff div 層 打開+關(guān)閉+ 拖動+遮罩+移動+動畫改變高寬
div層 打開+關(guān)閉+ 拖動+遮罩+移動+動畫改變高寬的實(shí)例js代碼2008-07-07js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號的方法
這篇文章主要介紹了js實(shí)現(xiàn)正則匹配中文標(biāo)點(diǎn)符號的方法,涉及JavaScript正則匹配與判定的簡單使用技巧,需要的朋友可以參考下2015-12-12