[jQuery] jQuery的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?
生活随笔
收集整理的這篇文章主要介紹了
[jQuery] jQuery的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
[jQuery] jQuery的屬性拷貝(extend)的實(shí)現(xiàn)原理是什么,如何實(shí)現(xiàn)深拷貝?
一、jQuery.extend() 函數(shù)用于將一個(gè)或多個(gè)對象的內(nèi)容合并到目標(biāo)對象。 語法$.extend( target [, object1 ] [, objectN ] )指示是否深度合并$.extend( [deep ], target, object1 [, objectN ] )警告: 不支持第一個(gè)參數(shù)傳遞 false 。參數(shù)描述deep可選。 Boolean類型 指示是否深度合并對象,默認(rèn)為false。如果該值為true,且多個(gè)對象的某個(gè)同名屬性也都是對象,則該"屬性對象"的屬性也將進(jìn)行合并。targetObject類型 目標(biāo)對象,其他對象的成員屬性將被附加到該對象上。object1可選。 Object類型 第一個(gè)被合并的對象。objectN可選。 Object類型 第N個(gè)被合并的對象。二、深拷貝代碼(把extend函數(shù)的第一個(gè)參數(shù)設(shè)置為true):var p = {"id":"007","name":"劉德華","wife":{"id":"008","name":"劉德的妻子","address":{"city":"北京","area":"海淀區(qū)"}}}//深度拷貝的方式(把extend函數(shù)的第一個(gè)參數(shù)設(shè)置為true),把p的屬性合并到j(luò)Query($)上$.extend(true,$,p);p.wife.name="張三瘋";p.wife.address.city="香港";console.log($.id);console.log($.wife.name);console.log($.wife.address.city);console.log(p);控制臺打印結(jié)果:三、淺拷貝代碼(extend函數(shù)里不傳入第一個(gè)參數(shù),默認(rèn)為false):個(gè)人簡介
我是歌謠,歡迎和大家一起交流前后端知識。放棄很容易,
但堅(jiān)持一定很酷。歡迎大家一起討論
主目錄
與歌謠一起通關(guān)前端面試題
總結(jié)
以上是生活随笔為你收集整理的[jQuery] jQuery的属性拷贝(extend)的实现原理是什么,如何实现深拷贝?的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: cadence 怎么拼版_ALLEGRO
- 下一篇: 威纶通触摸屏直接与台达变频器进行MODB