Open
Description
1. 使用 function foo() {}
形式,导致作用域提升,会出现在函数被声明之前就可以使用
// 函数调用出现在函数定义之前,当代码行数比较多时,定位函数比较不方便,不利于从上到下阅读代码的习惯
doSomething();
function doSomething() {
// ...
}
// 推荐如下形式
const doSomething = function() {
// ...
};
doSomething();
1. 推荐使用命名函数,而不是匿名函数,在函数体报错时方便追踪
// doSomething.js
// 报错信息只会定位到这个文件, 不会提示名称
export default () => {
console.log('匿名函数');
throw new Error('匿名函数');
}
// main.js
import doSomething from './doSomething';
doSomething();

// 命名函数报错
export default function namedFunction() {
console.log('命名函数');
throw new Error('命名函数');
}

Metadata
Metadata
Assignees
Labels
No labels