如何将多个且无限制的arguments一个或两个参数传递给函数?
例:
function myFunction(_id, _class, arg1, arg2, arg3, arg4, etc...){
console.log($(_id).html());
console.log($(_class).html());
for(var i = 0; i < args.length; i++) {
alert(args[i]);
}
}
myFunction("#myDiv",".mySpan", "Hello World!", "Bonjour le monde!", "Hola mundo!", "Ciao mondo", "Hallo Welt!", "etc");
Run Code Online (Sandbox Code Playgroud)
Aru*_*hny 12
您可以使用arguments对象.它是一个类似于Array的对象,对应于传递给函数的参数.
function myFunction(_id, _class){
console.log($(_id).html());
console.log($(_class).html());
for(var i = 2; i < arguments.length; i++) {
alert(arguments[i]);
}
}
myFunction("#myDiv",".mySpan", "Hello World!", "Bonjour le monde!", "Hola mundo!", "Ciao mondo", "Hallo Welt!", "etc");
Run Code Online (Sandbox Code Playgroud)
演示:小提琴
更多未来的答案:
ECMAScript 6专门为其引入了一个新的参数语法,即"rest"参数.rest参数必须以三个点(...)开头,并且必须是列表中的最后一个参数.
例:
function myFunction(_id, _class, ...args){
console.log($(_id).html());
console.log($(_class).html());
for(var i = 0; i < args.length; i++) {
alert(args[i]);
}
}
Run Code Online (Sandbox Code Playgroud)
演示(仅限FF15 +)
到目前为止,只有Firefox 15+支持它.
| 归档时间: |
|
| 查看次数: |
1430 次 |
| 最近记录: |