var a = [3,5,2,6,8];
var i = 0;
function x(a[i]) { //This line errors out, why?
}
请解释为什么上面的线路出错?我试图用递归方式以相反的顺序打印数组元素。如果你还可以写代码,那太棒了!Javascript--为什么低于函数定义错误?
var a = [3,5,2,6,8];
var i = 0;
function x(a[i]) { //This line errors out, why?
}
请解释为什么上面的线路出错?我试图用递归方式以相反的顺序打印数组元素。如果你还可以写代码,那太棒了!Javascript--为什么低于函数定义错误?
您将值传递给函数定义。你必须在你调用函数时给它,而不是在定义 函数时。当你调用一个函数时,你可以传递一个值。
var a = [3,5,2,6,8];
var i = 0;
function x(t) {
}
x(a[i]);
您正在用错误的参数定义函数。你给一个名称,你的函数的参数,就像任何其他变量:
function x(array) {
//Do something with your array
}
然后调用该函数:
var a = [1,2,3,4,5];
x(a);
正如你可以阅读其他答案,你是混合函数声明和函数eva淡化(呼叫)。
此声明接受一个a
参数的功能x
:
function x(a) {
}
这调用一个函数x
与参数a
:
var a = [3,5,2,6,8];
x(a);
或直接:
x([3,5,2,6,8]);
Regardin g至递归函数以扭转的阵列,这可以是一个选项:
var a = [3,5,2,6,8];
function x(a) {
if (a.length === 0) {
return [];
}
return a.slice(-1).concat(x(a.slice(0, -1)));
}
的参数声明,'A [1]',是无效的语法。只要'a'就行。 – Zirak 2014-12-06 08:56:08