javascript/jquery传递变量
我想知道是否有一种方法可以像这样传递变量:javascript/jquery传递变量,javascript,jquery,variables,parameter-passing,Javascript,Jquery,Variables,Parameter Passing,我想知道是否有一种方法可以像这样传递变量: <script type="text/javascript"> width = 300; </script> <script type="text/javascript"> (function(){ var k = width; alert(k); }); </script> 因此,如果有必要,我可以添加更多变量 谢谢 是的,你可以这样做 如果您在任何函数或闭包之外声明一个变量,该变量
<script type="text/javascript">
width = 300;
</script>
<script type="text/javascript">
(function(){
var k = width;
alert(k);
});
</script>
因此,如果有必要,我可以添加更多变量
谢谢 是的,你可以这样做
如果您在任何函数或闭包
之外声明一个变量,该变量将是全局变量(窗口对象的属性),并且您可以在声明之后的任何位置(甚至在外部js文件中)使用该变量
但是最好将所有全局变量放在一个对象中,这样它就不会像这样污染全局名称空间
globalVars = {
width: 300,
height: 200
};
function getVariable(width)
{
var newWidth = width;
alert(newWidth);
//do something else
return newWidth
}
然后像这样使用它们
(function(){
var k = globalVars.width;
alert(k);
});
是的,你能做到
如果您在任何函数或闭包
之外声明一个变量,该变量将是全局变量(窗口对象的属性),并且您可以在声明之后的任何位置(甚至在外部js文件中)使用该变量
但是最好将所有全局变量放在一个对象中,这样它就不会像这样污染全局名称空间
globalVars = {
width: 300,
height: 200
};
function getVariable(width)
{
var newWidth = width;
alert(newWidth);
//do something else
return newWidth
}
然后像这样使用它们
(function(){
var k = globalVars.width;
alert(k);
});
窗口。$vars={
宽度:300
};
(功能(){
var k=窗口。$vars.width;
警报(k);
})();
将变量放入全局范围就可以了。
窗口。$vars={
宽度:300
};
(功能(){
var k=窗口。$vars.width;
警报(k);
})();
将变量放入全局范围即可。看起来您正在尝试创建一个大型配置设置文件。我会创建一个对象并引用它的属性来分配局部变量 所以我会这样做:
<script type="text/javascript">
var myLargeObject = {
width:300,
name:"give it a name",
height:500,
etc..
}
</script>
//then reference your values like this...
<script type="text/javascript">
(function(){
var k = myLargeObject.width;
alert(k);
});
</script>
var myLargeObject={
宽度:300,
名称:“给它起个名字”,
身高:500,
等
}
//然后像这样引用你的值。。。
(功能(){
var k=myLargeObject.width;
警报(k);
});
看起来您正在尝试创建一个大型配置设置文件。我会创建一个对象并引用它的属性来分配局部变量
所以我会这样做:
<script type="text/javascript">
var myLargeObject = {
width:300,
name:"give it a name",
height:500,
etc..
}
</script>
//then reference your values like this...
<script type="text/javascript">
(function(){
var k = myLargeObject.width;
alert(k);
});
</script>
var myLargeObject={
宽度:300,
名称:“给它起个名字”,
身高:500,
等
}
//然后像这样引用你的值。。。
(功能(){
var k=myLargeObject.width;
警报(k);
});
您可以将这样的文件放入
globalVars = {
width: 300,
height: 200
};
function getVariable(width)
{
var newWidth = width;
alert(newWidth);
//do something else
return newWidth
}
调用函数:
getVariable(300)
或
这就是您想要完成的吗?您可以将这样的内容放入一个文件中
globalVars = {
width: 300,
height: 200
};
function getVariable(width)
{
var newWidth = width;
alert(newWidth);
//do something else
return newWidth
}
调用函数:
getVariable(300)
或
这就是您想要实现的吗?您可以在Cookie的帮助下实现这一点您的解决方案有什么问题?唯一的区别是,我只定义一个包含所有必需变量的对象。不,cookies是不必要的。这实际上应该是可行的,因为变量是在包含其他脚本之前声明的,所以它应该在@JonathanOng中可用。看起来您正在尝试创建一个配置文件。我会将这些配置设置放在对象上。然后,我将用select对象值定义变量。您的代码按原样工作——或者,除非底部脚本中的代码永远不会执行。您需要在分号之前添加一个尾随的
()
,以调用您的函数。您可以在Cookie的帮助下这样做。您的解决方案有什么问题?唯一的区别是,我只定义一个包含所有必需变量的对象。不,cookies是不必要的。这实际上应该是可行的,因为变量是在包含其他脚本之前声明的,所以它应该在@JonathanOng中可用。看起来您正在尝试创建一个配置文件。我会将这些配置设置放在对象上。然后,我将用select对象值定义变量。您的代码按原样工作——或者,除非底部脚本中的代码永远不会执行。您需要在分号之前添加一个尾随的()
,以调用函数。