新聞中心
JavaScript 提供了很多克隆數(shù)組的方法,其中大多數(shù)在性能和結(jié)果方面都非常相似。以下就是這些方法的簡要介紹。

目前成都創(chuàng)新互聯(lián)公司已為上千家的企業(yè)提供了網(wǎng)站建設(shè)、域名、網(wǎng)絡(luò)空間、網(wǎng)站托管運營、企業(yè)網(wǎng)站設(shè)計、托克遜網(wǎng)站維護(hù)等服務(wù),公司將堅持客戶導(dǎo)向、應(yīng)用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
展開運算符
ES6 引入了展開運算符(...),它可能是對數(shù)組進(jìn)行淺拷貝的最簡單和最常見的方法。
- let x = [1, 2, 3, 4];
- let y = [...x];
Array.from()
Array.from() 是一個非常強大的 API,可用來做許多不同的事,包括創(chuàng)建數(shù)組的副本。
- let x = [1, 2, 3, 4];
- let y = Array.from(x);
Array.prototype.slice()
與展開運算符類似,Array.prototype.slice() 可用于對數(shù)組進(jìn)行淺拷貝。
- let x = [1, 2, 3, 4];
- let y = x.slice();
Array.prototype.map()
這是一個非傳統(tǒng)的方法,可以用 Array.prototype.map() 通過將數(shù)組的每個元素映射到自身,來創(chuàng)建新的數(shù)組。
- let x = [1, 2, 3, 4];
- let y = x.map(i => i);
Array.prototype.filter()
同樣也可以用 Array.prototype.filter() 返回每個元素的 true 值,從而產(chǎn)生一個包含所有原始數(shù)組元素的新數(shù)組。
- let x = [1, 2, 3, 4];
- let y = x.filter(() => true);
Object.assign()
最后可以通過 Object.assign(),使用方式和克隆對象完全相同,同樣適用于克隆數(shù)組。
- let x = [1, 2, 3, 4];
- let y = Object.assign([], x);
當(dāng)前名稱:如何在 JavaScript 中克隆數(shù)組?
地址分享:http://m.fisionsoft.com.cn/article/dpepssg.html


咨詢
建站咨詢
