我怎么能执行一个JavaScript函数,这样的:执行功能串
cursor.continue(parameters)
使用字符串识别功能名称,使用eval
没有?像这样:
cursor.callMethod("continue", parameters);
这可能吗?
我怎么能执行一个JavaScript函数,这样的:执行功能串
cursor.continue(parameters)
使用字符串识别功能名称,使用eval
没有?像这样:
cursor.callMethod("continue", parameters);
这可能吗?
是的,您可以使用方括号表示法。
cursor["continue"](parameters)
cursor["continue"]
是完全一样cursor.continue
。
是的,你可以调用函数像这样:
cursor["continue"](parameters);
如果你是在callMethod
控制和功能属于一个对象或全球性的,那么是的,这是可能的。
例如,如果目标函数是同一个对象的方法,其中callMethod是:
var cursor = {
callMethod: function(method, params) {
this[method].apply(this, params);
},
continue: function() {}
}
cursor.callMethod("continue", [1, 2, 3]);
不幸的是,'cursor'是一个IndexedDB游标,所以techfoobar的解决方案更合适,但对于我的示例方法的文字实现肯定是+1。 – CodingIntrigue
@MelanciaUK:我不认为这是问题的一个副本。 – Ian
@我已经收回了我的投票。干杯。 – melancia