在Javascript中'var'声明的变量和'this'创建的属性之间有什么区别?

Ada*_*Lee 6 javascript

首先使用var

 function testCode(some) 
    {
         var something = some;
    }
Run Code Online (Sandbox Code Playgroud)

第二个使用这个

function testCode2(some) 
{
     this.something = some ;
}
Run Code Online (Sandbox Code Playgroud)

Sal*_*ter 2

如果这些函数用作函数,则 this 关键字将使变量成为静态变量。如果该函数被调用两次,this.something 仍将具有其值,而一旦函数执行完毕,第一个主体将删除变量数据。

如果将它们用作类构造函数,var 将定义一个私有变量,这将声明一个公共变量。

看到这个小提琴: http: //jsfiddle.net/UUFuX/1/