我很困惑哪些是声明此对象的最有效/最佳实践方式。
在我正在重用的函数内部,但我认为这意味着每次调用函数时都会声明它
function mapVals(ele){
var myObj = {
"chkOne" : "HV1",
"chkTwo" : "HV2",
"chkThree" : "HV3"
}
var thisVal = myObj[ele.id];
//Other code
}
在函数之外,但它正在污染全局命名空间
var myObj = {
"chkOne" : "HV1",
"chkTwo" : "HV2",
"chkThree" : "HV3"
}
function mapVals(ele){
var thisVal = myObj[ele.id];
//Other code
}
或者也许是一种封装技术来创建一个临时范围?我知道语法,但以前没有使用过。
(function(){
var myObj = {
"chkOne" : "HV1",
"chkTwo" : "HV2",
"chkThree" : "HV3"
}
function mapVals(ele){
var thisVal = myObj[ele.id];
//Other code
}
})();
或者还有什么我没有考虑过的?