如何正确工作_around_ Javascript持久性?

Spo*_*pot 0 javascript php code-reuse persistence scope

有Javascript vars /等的基本持久性.您调用一个函数/方法,并在下次调用相同的函数/方法时,它将保留上次的数据.

您可以在完成变量后删除变量,但这会消除为该实例再次使用代码的优势.

那么在同一页面内编写可以在不同元素上重用的代码的正确方法是什么.

因此,我需要能够编写代码,以便我可以将它指向几个不同的元素,然后与为每个元素隔离的代码进行交互.

所以在PHP中(作为一个例子)我会这样做:

$element1 = new MyClass();
$element2 = new MyClass();
$element3 = new MyClass();
Run Code Online (Sandbox Code Playgroud)

在这种情况下,它是在三个隔离范围中运行的相同代码.我怎样才能用JS正确地做到这一点.即使使用jQuery的extend()也会给我带来麻烦.

谢谢.

gra*_*ity 7

var在定义局部变量时使用关键字(否则它们将默认为全局变量).

function foo() {
    var i;
    // code code code code
}
Run Code Online (Sandbox Code Playgroud)

  • 没有"持久性" - 如果你不使用'var',你只是将变量声明为全局变量,因此在函数返回后它们不会被取消.(至少我是这么认为的.) (4认同)