Javascript JS-如何正确放置局部变量
我有一个JS模块,我想为局部变量设置一个值。我想我可以用“this”来使用相同的名称: JSJavascript JS-如何正确放置局部变量,javascript,Javascript,我有一个JS模块,我想为局部变量设置一个值。我想我可以用“this”来使用相同的名称: JS amount在函数范围内,因此您不需要这个关键字 (function(){ var amount = 0; var setAmount = function( newAmount ){ amount = newAmount; } })(); amount在函数范围内,因此您不需要这个关键字 (function(){ var amount = 0; var setAmount =
amount
在函数范围内,因此您不需要这个
关键字
(function(){
var amount = 0;
var setAmount = function( newAmount ){
amount = newAmount;
}
})();
amount
在函数范围内,因此您不需要这个
关键字
(function(){
var amount = 0;
var setAmount = function( newAmount ){
amount = newAmount;
}
})();
amount
在函数范围内,因此您不需要这个
关键字
(function(){
var amount = 0;
var setAmount = function( newAmount ){
amount = newAmount;
}
})();
amount
在函数范围内,因此您不需要这个
关键字
(function(){
var amount = 0;
var setAmount = function( newAmount ){
amount = newAmount;
}
})();
您使用的是自执行匿名函数,您没有“this”,因为这不是一个对象。在您的情况下,您只需:
(function(){
var amount = 0;
var setAmount = function( pamount ){
amount = pamount;
}
........
})();
您使用的是自执行匿名函数,您没有“this”,因为这不是一个对象。在您的情况下,您只需:
(function(){
var amount = 0;
var setAmount = function( pamount ){
amount = pamount;
}
........
})();
您使用的是自执行匿名函数,您没有“this”,因为这不是一个对象。在您的情况下,您只需:
(function(){
var amount = 0;
var setAmount = function( pamount ){
amount = pamount;
}
........
})();
您使用的是自执行匿名函数,您没有“this”,因为这不是一个对象。在您的情况下,您只需:
(function(){
var amount = 0;
var setAmount = function( pamount ){
amount = pamount;
}
........
})();
这就是
这个
的工作原理
var x = {
amount : 0,
setAmount : function(){
alert(this.amount);
}
}
x.setAmount(); //alert 0
这就是
这个
的工作原理
var x = {
amount : 0,
setAmount : function(){
alert(this.amount);
}
}
x.setAmount(); //alert 0
这就是
这个
的工作原理
var x = {
amount : 0,
setAmount : function(){
alert(this.amount);
}
}
x.setAmount(); //alert 0
这就是
这个
的工作原理
var x = {
amount : 0,
setAmount : function(){
alert(this.amount);
}
}
x.setAmount(); //alert 0
想象两个盒子,一个大一个小。小盒子在大盒子里面 小框表示您定义的
setAmount
函数。大框表示封装setAmount函数的闭包
每个盒子只知道它自己的内部和其父外盒的内部
关键字this
,表示在该框内
小框已经可以看到金额
,因为它在大框中。如果您在小框中定义this.amount=something
,则它本质上与说var amount=something
相同
您还需要小心使用参数名称,因为如果不小心,这只会导致头痛
您遇到的问题是一个范围问题,如果您必须以这种方式命名变量,那么这里有一个解决方案
(function() {
var amount = 0;
var scope = this;
var setAmount = function(amount) {
scope.amount = amount;
}
........
})();
这样做的目的是在更大的框中创建一个变量,该变量引用回它的范围(在我们的示例中,返回到它自己的框)。因为小盒子在大盒子里面,所以它可以看到范围变量。想象两个盒子,一个大一个小。小盒子在大盒子里面 小框表示您定义的
setAmount
函数。大框表示封装setAmount函数的闭包
每个盒子只知道它自己的内部和其父外盒的内部
关键字this
,表示在该框内
小框已经可以看到金额
,因为它在大框中。如果您在小框中定义this.amount=something
,则它本质上与说var amount=something
相同
您还需要小心使用参数名称,因为如果不小心,这只会导致头痛
您遇到的问题是一个范围问题,如果您必须以这种方式命名变量,那么这里有一个解决方案
(function() {
var amount = 0;
var scope = this;
var setAmount = function(amount) {
scope.amount = amount;
}
........
})();
这样做的目的是在更大的框中创建一个变量,该变量引用回它的范围(在我们的示例中,返回到它自己的框)。因为小盒子在大盒子里面,所以它可以看到范围变量。想象两个盒子,一个大一个小。小盒子在大盒子里面 小框表示您定义的
setAmount
函数。大框表示封装setAmount函数的闭包
每个盒子只知道它自己的内部和其父外盒的内部
关键字this
,表示在该框内
小框已经可以看到金额
,因为它在大框中。如果您在小框中定义this.amount=something
,则它本质上与说var amount=something
相同
您还需要小心使用参数名称,因为如果不小心,这只会导致头痛
您遇到的问题是一个范围问题,如果您必须以这种方式命名变量,那么这里有一个解决方案
(function() {
var amount = 0;
var scope = this;
var setAmount = function(amount) {
scope.amount = amount;
}
........
})();
这样做的目的是在更大的框中创建一个变量,该变量引用回它的范围(在我们的示例中,返回到它自己的框)。因为小盒子在大盒子里面,所以它可以看到范围变量。想象两个盒子,一个大一个小。小盒子在大盒子里面 小框表示您定义的
setAmount
函数。大框表示封装setAmount函数的闭包
每个盒子只知道它自己的内部和其父外盒的内部
关键字this
,表示在该框内
小框已经可以看到金额
,因为它在大框中。如果您在小框中定义this.amount=something
,则它本质上与说var amount=something
相同
您还需要小心使用参数名称,因为如果不小心,这只会导致头痛
您遇到的问题是一个范围问题,如果您必须以这种方式命名变量,那么这里有一个解决方案
(function() {
var amount = 0;
var scope = this;
var setAmount = function(amount) {
scope.amount = amount;
}
........
})();
这样做的目的是在更大的框中创建一个变量,该变量引用回它的范围(在我们的示例中,返回到它自己的框)。因为小框位于大框内,所以它可以看到范围变量。更改
amount
参数的变量名称这是因为在相同的执行上下文中有两个同名的变量。更改amount
参数的变量名称此hap