如何在常用函数中使用局部变量而不是每次都声明它?

use*_*107 3 javascript scope

我正在尝试建立使用局部变量的技能.为了使变量成为局部变量,我在我想要使用它的函数中声明它,对吧?

但如果我经常使用这个功能,我不会一遍又一遍地声明这个变量吗?这样可以吗?

例如,如果我有这样的函数:

function myFunction() {
  var myVariable;

  // some code that requires myVariable
}
Run Code Online (Sandbox Code Playgroud)

......我每次都会宣布myVariable.每次调用函数时,这是否会为myVariable留出内存空间?有没有解决的办法?

got*_*ers 5

是的,这是一个局部变量,即无法在此范围之外访问它.

这样做很好,实际上是推荐做法之一.

是的,每次调用时都会使用内存,但是当函数执行完毕时它会被清除/垃圾收集(假设没有其他泄漏).

还有一件事,你可以将更var改为alet以获得更好的块范围...虽然在这个非常简单的情况下没有必要.