国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

AngularJS extend用法詳解及實例代碼

2019-11-19 18:58:17
字體:
來源:轉載
供稿:網友

AngularJS extend用法

   angular.extend:依次將第二個參數及后續的參數的第一層屬性(不管是簡單屬性還是對象)拷貝賦給第一個參數的第一層屬性,即如果是對象,則是引用的是同一個對象,并返回第一個參數對象。

        實例一:var r = angular.extend(b, a);將對象a的第一層屬性(不管是簡單屬性還是對象)拷貝賦給對象b的第一層屬性,即如果是對象,則是引用的是同一個對象,并返回對象b

Js代碼 

var a = {   name : 'bijian',   address : 'shenzhen',   family : {     num : 6,     amount : '80W'   } }; var b = {}; var r = angular.extend(b, a); console.log('a:' + JSON.stringify(a)); console.log('b:' + JSON.stringify(b)); console.log('r:' + JSON.stringify(r));  b.address = 'hanzhou'; b.family.amount = '180W'; console.log('a:' + JSON.stringify(a)); console.log('b:' + JSON.stringify(b)); console.log('r:' + JSON.stringify(r)); 

運行結果:

Text代碼 

a:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"80W"}} b:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"80W"}} r:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"80W"}} a:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"180W"}} b:{"name":"bijian","address":"hanzhou","family":{"num":6,"amount":"180W"}} r:{"name":"bijian","address":"hanzhou","family":{"num":6,"amount":"180W"}} 

         實例二:var r = angular.extend(b, a, z);相繼將對象a、z的第一層屬性(不管是簡單屬性還是對象)拷貝賦給對象b的第一層屬性,即如果是對象,則是引用的是同一個對象,并返回對象b

Js代碼 

var a = {   name : 'bijian',   address : 'shenzhen',   family : {     num : 6,     amount : '80W'   } }; var z = {   family : {     amount : '150W',     mainSource : '經營公司'   } }; var b = {}; var r = angular.extend(b, a, z); console.log('a:' + JSON.stringify(a)); console.log('b:' + JSON.stringify(b)); console.log('r:' + JSON.stringify(r));  b.address = 'hanzhou'; b.family.amount = '180W'; console.log('a:' + JSON.stringify(a)); console.log('b:' + JSON.stringify(b)); console.log('r:' + JSON.stringify(r)); 

運行結果:

Text代碼 

a:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"80W"}} b:{"name":"bijian","address":"shenzhen","family":{"amount":"150W","mainSource":"經營公司"}} r:{"name":"bijian","address":"shenzhen","family":{"amount":"150W","mainSource":"經營公司"}} a:{"name":"bijian","address":"shenzhen","family":{"num":6,"amount":"80W"}} b:{"name":"bijian","address":"hanzhou","family":{"amount":"180W","mainSource":"經營公司"}} r:{"name":"bijian","address":"hanzhou","family":{"amount":"180W","mainSource":"經營公司"}}  

        再多的實例也不如源代碼來的簡單、直接和準確,angular.extend源碼如下:

Js代碼 

/**  * @ngdoc function  * @name angular.extend  * @function  *  * @description  * Extends the destination object `dst` by copying all of the properties from the `src` object(s)  * to `dst`. You can specify multiple `src` objects.  *  * @param {Object} dst Destination object.  * @param {...Object} src Source object(s).  * @returns {Object} Reference to `dst`.  */ function extend(dst) {  var h = dst.$$hashKey;  forEach(arguments, function(obj){   if (obj !== dst) {    forEach(obj, function(value, key){     dst[key] = value;    });   }  });   setHashKey(dst,h);  return dst; } 

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 通化县| 抚州市| 客服| 新和县| 浦北县| 亚东县| 蓝田县| 徐闻县| 高清| 饶平县| 花垣县| 大厂| 云梦县| 平山县| 康定县| 那坡县| 海南省| 黔东| 石泉县| 资兴市| 汉中市| 道孚县| 靖宇县| 浦城县| 通州区| 鄂尔多斯市| 海宁市| 开平市| 溧水县| 镇雄县| 博湖县| 四子王旗| 黄石市| 松潘县| 理塘县| 阿拉善左旗| 资源县| 吉木萨尔县| 龙里县| 霸州市| 金乡县|