我的比较容易看懂哦
function namespace(oNamespace, sPackage) { const keys = sPackage.split('.') let i = 0, temp = oNamespace do { const key = keys[i++] // 属性是对象则直接赋值,否则把属性赋值为空对象并赋值给temp(2次赋值才能保证最终是个嵌套对象) temp = Object.prototype.toString.call(temp[key]) === '[object Object]' ? temp[key] : temp[key] = {} } while (i < keys.length) return oNamespace }