//根据包名,在指定空间中创建对象
/*
*
输入描述:
namespace({a: {test: 1, b: 2}}, 'a.b.c.d')
输出描述:
{a: {test: 1, b: {c: {d: {}}}}}
* */
//知识点:hasOwnProperty() 方法会返回一个布尔值,指示对象自身属性中是否具有指定的属性(也就是,是否有指定的键)。
function namespace(oNamespace, sPackage) {
const packArr = sPackage.split('.')
var last = oNamespace
for(let i=0; i<packArr.length; i++){
if(!last.hasOwnProperty(packArr[i])){
last[packArr[i]] = {}
last = last[packArr[i]]
}
}
return oNamespace
}
const oNamespace = {a: {test: 1, b: 2}}
const sPackage = 'a.b.c.d'
namespace(oNamespace, sPackage)
前端[编程题]根据包名,在指定空间中创建对象
最新推荐文章于 2022-08-18 12:13:34 发布