1 问题
window.addEventListener传入函数名时,可加括号,也可以不加
window.addEventListener('hashchange', this.refresh(), false);
window.addEventListener('hashchange', this.refresh, false);
2 区别
- 加括号,在执行到添加事件这一行,就会立刻执行this.refresh(), 并且即使触发事件也不再执行
- 不加括号,只有触发事件时,才会执行
3 总结
加括号是错误写法,跟直接调用没有区别