我试图在Javascript中创建函数查找,本质上是将数据类型映射到对该数据类型执行某些操作的函数。现在我有类似的东西:
var Namespace = Namespace || {};
Namespace.MyObj = function () {
var stringFunc = function(someData) {
//Do some string stuff with someData
};
var intFunc = function(someData) {
//Do some int stuff with someData
};
var myLookUp = {
'string': stringFunc,
'int' : intFunc
};
return {
PublicMethod: function (dataType, someData) {
myLookUp[dataType](someData);
}
};
} ();
调用
Namespace.MyObj.PublicMethod(dataType, someData)
时,出现错误,未定义myLookUp。我假设我不会正确设置函数查找对象,但不确定如何执行此操作。谢谢你的帮助。 最佳答案
问题可能只是不正确的情况
myLookup[dataType](someData);
应该是(注意大写U)
myLookUp[dataType](someData);