码迷,mamicode.com
首页 > 其他好文 > 详细

根据包名,在指定空间中创建对象

时间:2018-07-01 20:57:00      阅读:140      评论:0      收藏:0      [点我收藏+]

标签:property   names   test   amp   json   创建对象   ===   prope   split   

根据包名,在指定空间中创建对象

输入描述:

namespace({a: {test: 1, b: 2}}, ‘a.b.c.d‘)

输出描述:

{a: {test: 1, b: {c: {d: {}}}}}
function namespace(oNamespace, sPackage) {
    var a = sPackage.split(‘.‘),
        o = oNamespace;
    a.forEach(function(item) {
    	if (!(o.hasOwnProperty(item) && typeof o[item]==="object")) {
        	o[item] = {};
        }
        o = o[item];
    });
    return oNamespace;
}

var o = namespace({ a: { test: 1, b: 2 } }, ‘a.b.c.d‘);
console.log(o);
console.log(JSON.stringify(o));  // {"a":{"test":1,"b":{"c":{"d":{}}}}}

  

  

根据包名,在指定空间中创建对象

标签:property   names   test   amp   json   创建对象   ===   prope   split   

原文地址:https://www.cnblogs.com/mingzhanghui/p/9251158.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!