javascript 变量提升是指在执行代码之前,会先将变量声明提升到当前作用域的顶部,所以即使变量声明在代码块的底部,也可以在代码块的顶部使用变量。
优点:
1、可以让我们在任何位置使用变量,而不必担心变量未声明而导致的错误。
2、可以让程序更加灵活,可以在声明变量之前使用变量,可以在定义函数之前调用函数,可以在定义函数之前使用函数。
3、可以简化代码,减少重复性代码。
缺点:
1、可能会引起一些潜在的错误,比如当我们使用一个变量时,可能会因为变量提升而导致变量值为undefined。
2、可能会导致代码难以阅读,因为变量提升会使代码变得混乱,有时候变量的定义和使用位置不太一致,会让代码变得难以阅读。