题目描述
根据包名,在指定空间中创建对象
输入描述:
namespace({a: {test: 1, b: 2}}, 'a.b.c.d')
输出描述:
{a: {test: 1, b: {c: {d: {}}}}}
我的解答:
function namespace(oNamespace, sPackage) {
var spa=sPackage.split('.');
for(var i=0;i<spa.length;i++){
if(!oNamespace.hasOwnProperty(spa[i])||typeof oNamespace[spa[i]]!=='object'){
oNamespace[spa[i]]={};
oNamespace=oNamespace[spa[i]];
}
else{
oNamespace;
}
}
return oNamespace;
}
存在问题:控制台返回为{},牛客网测试通过