【发布时间】:2011-12-07 13:12:21
【问题描述】:
我最近在我的网站上玩弄 jQuery,而我对 Javascript 的了解相当有限。我开始喜欢 jQuery 将变量传递给花括号内的 jQuery 函数的能力,如下所示:
$(somediv).animate({thisisone: 1, thisistwo: 2}, thisisavar);
我想知道的是如何编写一个可以将项目传递到花括号内的 Javascript 函数?我知道你可以写这样的函数:
function someName(var1, var2, var3...) {
}
但这不支持大括号?我也知道您可以不添加任何参数并执行此操作:
function accident() {
for( var i = 0; i < arguments.length; i++ ) {
alert("This accident was caused by " + arguments[i]);
}
}
accident("me","a car","alcohol","a tree that had no right to be in the path of my driving");
但我也想传递外部变量而不是一整行字符串,如果这样有意义吗?
基本上,我想要一个可以传递变量的函数,如下所示:
function myFunction(neededcodehere){
//Some code here...
}
myFunction (var1, {"Option 1", "Option 2", "Option 3"}, anothervar);
【问题讨论】:
-
FWIW、
{"Option 1", "Option 2", "Option 3"}和var 1不是有效的 JavaScript。 -
Wraith,我想指出的是,如果您传递预先声明的变量,您的函数将已经能够在没有任何特殊语法的情况下访问它们(只要它们没有嵌套在一些其他功能)。
-
嘿 Marlin,它们不会被预先声明,我写错了,它看起来像
myFunction("Title", {"Option 1" : "option1name", "Option 2" : "option2name"}, true)
标签: function javascript-objects javascript