91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Javascript中復制對象

發布時間:2021-05-10 15:42:43 來源:億速云 閱讀:166 作者:Leah 欄目:web開發

怎么在Javascript中復制對象?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

javascript是一種什么語言

javascript是一種動態類型、弱類型的語言,基于對象和事件驅動并具有相對安全性并廣泛用于客戶端網頁開發的腳本語言,同時也是一種廣泛用于客戶端Web開發的腳本語言。它主要用來給HTML網頁添加動態功能,現在JavaScript也可被用于網絡服務器,如Node.js。

js如何復制一個對象?

方法一:

把原來對象的屬性遍歷一遍,賦給一個新的對象。

//深復制對象方法    
var cloneObj = function (obj) {  
    var newObj = {};  
    if (obj instanceof Array) {  
        newObj = [];  
    }  
    for (var key in obj) {  
        var val = obj[key];  
        //newObj[key] = typeof val === 'object' ? arguments.callee(val) : val; //arguments.callee 在哪一個函數中運行,它就代表哪個函數, 一般用在匿名函數中。  
        newObj[key] = typeof val === 'object' ? cloneObj(val): val;  
    }  
    return newObj;  
};  
//測試    
var obj = {a:function(){console.log(this.b.c)},b:{c:1}},//設置一個對象  
newObj = cloneObj(obj);//復制對象  
newObj.b.c=2;//給新對象賦新值  
obj.a();//1,不受影響  
newObj.a();//2

方法二:

1). 先將對象變為字符串,然后再變為json對象,防止對象的指針指向問題,為深拷貝

2). undefined 和 function 類型的屬性會被忽略,而 Date 類型的屬性則會被轉換為字符串

var obj = {a:1,b:2}  
var newObj = JSON.parse(JSON.stringify(obj));  
newObj.a=3;  
console.log(obj);  
console.log(newObj);

方法三:

針對數組對象的方法,用數組方法concat一個空數組

var a=[1,2,3];  
var b=a;  
var c=[].concat(a);  
a.push(4);  
console.log(b);  
console.log(c);

方法四:

擴展運算符實現對象的深拷貝

var obj = {
  name: 'FungLeo',
  sex: 'man',
  old: '18'}var { ...obj2 } = obj
obj.old = '22'console.log(obj)
console.log(obj2)

方法五:

ES6擴展運算符實現數組的深拷貝

var arr = [1,2,3,4,5]var [ ...arr2 ] = arr
arr[2] = 5console.log(arr)
console.log(arr2)

怎么在Javascript中復制對象

關于怎么在Javascript中復制對象問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

麻阳| 托克逊县| 灯塔市| 上犹县| 上林县| 陇西县| 博客| 罗平县| 彭山县| 长垣县| 蕲春县| 东乌珠穆沁旗| 灵武市| 颍上县| 汉阴县| 齐齐哈尔市| 绍兴县| 晋城| 平邑县| 合水县| 库伦旗| 阜宁县| 册亨县| 板桥市| 平凉市| 英吉沙县| 台湾省| 尼木县| 阿拉尔市| 潼关县| 乡城县| 景洪市| 永定县| 迁安市| 庆阳市| 安丘市| 宣恩县| 松桃| 招远市| 兴海县| 余江县|