参数对象 - JavaScript

The arguments object - JavaScript

我有 运行 下面的代码。但我应该从数据数组中获取最小数量为 -1 但我得到的是 'min' 变量的初始化值,即 0

let data = [2,3,4,2,6,7,8,9,-1,7,6,4,3]
let  min = 0

function findMin() {

  for (let n of arguments) {
      if(n < min) {
          min = n
      }
  }
  return min
}

const smallNumber = findMin(data)
console.log(smallNumber)

谁能帮忙解释一下?

arguments 是一个类似数组的对象,其中包含调用函数时使用的每个参数的条目,第一个条目的索引为 0。

试试这个片段

let data = [2, 3, 4, 2, 6, 7, 8, 9, -1, 7, 6, 4, 3];
let min = 0;

function findMin() {
  for (let n of arguments[0]) {
    if (n < min) {
        min = n;
    }
  }
  return min;
}

const smallNumber = findMin(data);
console.log(smallNumber);

您只是忘记在函数中声明参数!

let data = [2,3,4,2,6,7,8,9,-1,7,6,4,3]
let  min = 0

function findMin(arguments) {

  for (let n of arguments) {
      if(n < min) {
          min = n
      }
  }
  return min
}

const smallNumber = findMin(data)
console.log(smallNumber)