我有以下场景
然后我有一个检查以下条件的函数:
var callback = $input.data('callback');
if(callback){
// I want to do something like this:
window[callback].call(this);
}
但由于名称空间的原因,我不能这样做。此场景的最佳实践是什么?
发布于 2012-10-12 20:15:00
window.foo = {
bar: function () {
alert(this.val);
},
val: "foobar!"
}
var callback = "foo.bar";
if (callback) {
var segments = callback.split('.'),
context = window;
for (var i = 0; i < segments.length-1; i++) {
context = context[segments[i]];
}
context[segments[i]]();
}
https://stackoverflow.com/questions/12847315
复制相似问题