永远不要在一个非函数代码块(if while等)中声明一个函数,把那个函数赋给一个变量,浏览器允许你这么做,但是他们解析不一致
// bad
if (currentUser) {
function test() {
console.log('Nope.');
}
}
// good
var test;
if (currentUser) {
test = function test() {
console.log('Yup.');
};
}
永远不要把参数命名为arguments ,因为这样会取代函数作用于的arguments。