x([1, 2, 3, 1, 2, 3], 2, 3);
function x(a){
console.log(a);
}
参数为什么结果[1,2,3,1,2,3]
而不是([1,2,3,1,2,3],2,3)
?
x([1, 2, 3, 1, 2, 3], 2, 3);
function x(a){
console.log(a);
}
参数为什么结果[1,2,3,1,2,3]
而不是([1,2,3,1,2,3],2,3)
?
为什么结果[1,2 ,3,1,2,3]和不([1,2,3,1,2,3],2,3)
因为您所呼叫的x
功能时通过3个参数:
[1,2,3,1,2,3]
(整数的一个JavaScript ARRA)2
(一个整数)3
(一个整数)但是您的x
功能只一个参数:
function x(a) {
console.log(a);
}
所以基本上这里打印的是什么是您传递给此函数的第一个参数的值。
如果要考虑到其他参数,你可以这样做:
function x(a, b, c) {
console.log(a);
console.log(b);
console.log(c);
}
您正在向x
函数传递三个参数,但只接受一个参数。您传递的数组用作函数中的a
参数,但在数组外部传递了两个数字,并且您在函数或日志命令中根本没有引用它们。
你可以改变你的函数签名就可以接受所有的3个参数:
function x(a, b, c) {
console.log(a, b ,c);
}
另外,如果你想登录的传递给函数,即使你不知道的参数所有会通过多少个,您可以使用每个函数中可用的变量arguments
。它包含传递给函数的所有参数数组:
function x() {
console.log(arguments);
}
var arr = ['a', 'b'];
x(arr, 3, 4); // output: [['a', 'b'], 3 ,4]
有关
arguments
变量的使用
更多信息可以在这里找到: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/arguments
你的手在三个参数的功能,但赶上一个先上。你记录第一个。第一个参数包含数组。 – arkascha