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

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

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

瀏覽:107日期: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
相關文章:
主站蜘蛛池模板: 97人人草| 人人综合网 | 久久久久久国产 | av一区二区三区在线观看 | 在线h片 | 亚洲精品不卡 | 国产伊人久久 | 三级av在线| 免费观看毛片 | 成人一级毛片 | 夜夜操网站 | 亚洲国产小视频 | 欧美精品三区 | 香蕉伊人网| 国产一级一片免费播放放a 男男成人高潮片免费网站 精品视频在线观看 | 久久精品综合 | 色婷婷导航 | 青青草免费在线观看 | 国产在线www | 一区二区三区在线观看视频 | 中文字幕第2页 | 亚洲精品91天天久久人人 | 福利网站在线观看 | 午夜在线小视频 | 成人免费福利 | 免费视频一区二区 | 日日干夜夜爽 | 亚洲国产第一页 | 亚洲免费成人 | 黄色网址在线免费观看 | 中国av在线播放 | 国产午夜精品久久 | av网址在线播放 | 亚洲第一免费视频 | 黄色免费在线看 | 真实人妻互换毛片视频 | av久草| 精品久久网站 | 日本在线看片 | 日韩亚洲欧美在线观看 | 国产精品一级二级 |