我有这样的功能:
Session.get = function(key) {
if (!window["_SESSION"] || typeof key == 'undefined') {
return window["_SESSION"] || {};
}
if (key.indexOf('.') === -1) {
return window["_SESSION"][key] || {};
}
var keyArr = key.split('.'), val = window["_SESSION"];
for ( var i = 0; i < keyArr.length; i++) {
if (typeof val[keyArr[i]] === 'undefined') {
return null;
}
val = val[keyArr[i]];
}
return val;
}
这个函数允许我在函数之外没有临时变量的情况下获取嵌套值。示例Session.get('var.nestedvar')
是返回值window[_SESSION']['var']['nestedvar']
。
蝙蝠我怎么能像这样(取消)设置变量?尝试delete val;
但没有用.. javascript 引用是如何工作的?有人知道完成类似功能的任何替代方法吗?