av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

JS對象復制(深拷貝和淺拷貝)

瀏覽:80日期:2024-03-30 17:08:46
一、淺拷貝1、Object.assign(target,source,source...)

a、可支持多個對象復制

b、如果source和target屬性相同 source會復制target的屬性

c、target只能為Object對象

var obj = {a:1,b:2}undefinedObject.assign({c:3},obj){c: 3, a: 1, b: 2}obj{a: 1, b: 2} 兼容性寫法if(Object.assign){//兼容}else{//不兼容}2、擴展運算符(spread)

支持將多個對象復制到一個對象上“

var obj1 = { foo: 'foo' };var obj2 = { bar: 'bar' }; var copySpread = { ...obj1, ...obj2 }; // Object {foo: 'foo', bar: 'bar'}copySpread {foo: 'foo', bar: 'bar'}var obj = {a:1,b:2,c:3}var objs = {...obj}objs{a: 1, b: 2, c: 3}objs.a=1010objs{a: 10, b: 2, c: 3}obj{a: 1, b: 2, c: 3}二、深拷貝1、使用對象序列化 JSON.stringify()和JSON.parse()

注意:此方法僅在原對象包含可序列化值類型且沒有任何循環引用時才有效。不可序列化值類型的一個例子是Date對象 -JSON.parse只能將其解析為字符串而無法解析回其原始的Date對象 或者對象中屬性值為function

var obj = {a:1,b:[1,2,3],c:{e:3},bool:false}undefinedvar objs = JSON.parse(JSON.stringify(obj))undefinedobjs{a: 1, b: Array(3), c: {…}, bool: false}objs.bool = truetrueobjs{a: 1, b: Array(3), c: {…}, bool: true}obj{a: 1, b: Array(3), c: {…}, bool: false}2、使用遞歸,對對象屬性進行判斷

function deepClone(obj) { var copy; // 如果 obj 是 null、undefined 或 不是對象,直接返回 obj // Handle the 3 simple types, and null or undefined if (null == obj || 'object' != typeof obj) return obj; // Handle Date if (obj instanceof Date) { copy = new Date(); copy.setTime(obj.getTime()); return copy; } // Handle Array if (obj instanceof Array) { copy = []; for (var i = 0, len = obj.length; i < len; i++) {copy[i] = clone(obj[i]); } return copy; } // Handle Function if (obj instanceof Function) { copy = function() { return obj.apply(this, arguments); } return copy; } // Handle Object if (obj instanceof Object) { copy = {}; for (var attr in obj) { if (obj.hasOwnProperty(attr)) copy[attr] = clone(obj[attr]); } return copy; } throw new Error('Unable to copy obj as type isn’t supported ' + obj.constructor.name);}

以上就是JS對象復制(深拷貝和淺拷貝)的詳細內容,更多關于JS的資料請關注好吧啦網其它相關文章!

標簽: JavaScript
相關文章:
主站蜘蛛池模板: 国产在线播放一区二区三区 | 久久精品中文字幕 | 可以在线观看av的网站 | 国产精品久久久久久影院8一贰佰 | 亚洲一区二区三区免费在线观看 | 成人午夜精品 | 日韩成人免费av | 超碰在线亚洲 | 久久久成人一区二区免费影院 | 成年人黄色免费视频 | xxxxx免费视频 | 久久99精品久久久久久青青日本 | 黄色一级网 | 午夜激情国产 | 91在线一区二区 | 狠狠色综合欧美激情 | 成人日韩av | 一区二区三区中文字幕 | 亚洲视频三区 | 麻豆国产精品777777在线 | 九色www| 伊色综合久久之综合久久 | 欧美一级电影免费观看 | 人人爽日日躁夜夜躁尤物 | 97人人超碰 | 免费观看成人鲁鲁鲁鲁鲁视频 | 在线中文字幕国产 | 四虎永久免费在线 | 精品国产乱码久久久久久牛牛 | 亚州影院 | 一区二区三区视频在线 | 久久男女视频 | 91av视频 | 国产日韩欧美精品 | 日韩中文字幕一区二区 | 亚洲一视频 | 91麻豆精品国产91久久久更新资源速度超快 | 免费的av| 午夜久久久久久久久久一区二区 | 狠狠婷婷综合久久久久久妖精 | 国产99久久久国产精品 |