我试图在哈希字符串中调用给定函数名称的函数。我有以下代码:
$(window).on('hashchange', function() {
//alert(location.hash.substring(1, location.hash.length));
window[location.hash.substring(1, location.hash.length)];
});
function test() {
alert('123!');
}
有趣的是,当我输入alert
调用时,一切都按预期工作。但是,当alert
评论时,它不起作用。
有什么想法?
window[location.hash.substring(1, location.hash.length)];
不调用函数。
如果要调用名称为 location.hash.substring(1, location.hash.length)
的函数,则可以做
window[location.hash.substring(1, location.hash.length)]();
旁注:
location.hash.substring(1, location.hash.length)
可以在
中缩短location.hash.slice(1)