打印javascript函数中的所有参数

Printing all the arguments in javascript function

本文关键字:参数 javascript 函数 打印      更新时间:2023-09-26

 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函数传递三个参数,但只接受一个。传递的数组用作函数中的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

为什么结果[1,2,3,1,2,3]而不是([1,2、3,1、2,3)

因为在调用x函数时要传递3个参数:

  • 参数1:[1,2,3,1,2,3](一个由整数组成的javascript数组)
  • 参数2:2(整数)
  • 参数3:3(整数)

但是x函数只需要一个参数:

function x(a) {
    console.log(a);
}

所以基本上,这里打印的是传递给这个函数的第一个参数的值。

如果你想考虑其他参数,你可以这样做:

function x(a, b, c) {
    console.log(a);
    console.log(b);
    console.log(c);
}