1JavaScript 怎么定义可变参数的函数

在 JavaScript 中,可以使用 arguments 对象来实现可变参数。 arguments 是一个类数组对象,包含传递给函数的所有参数。可以在函数内部通过访问 arguments 对象来访问所有参数。

以下是一个使用 arguments 对象实现可变参数的示例:

function sum() {
    let total = 0;
    for (let i = 0; i < arguments.length; i++) {
        total += arguments[i];
    }
    return total;
}

console.log(sum(1, 2, 3)); // 6
console.log(sum(4, 5, 6, 7)); // 22

在 ES6 中还可以通过扩展运算符来实现可变参数。

function sum(...numbers) {
    let total = 0;
    for (let i = 0; i < numbers.length; i++) {
        total += numbers[i];
    }
    return total;
}

console.log(sum(1, 2, 3)); // 6
console.log(sum(4, 5, 6, 7)); // 22

 

2["1","2","3"].map(parseInt)返回值是多少?

返回值是:[1,NaN,NaN]

parseIntmap函数都是常用的函数,可是 ["1", "2", "3"].map(parseInt) 为何返回不是[1,2,3]却是[1,NaN,NaN]

下面我们先来了解一下parseInt函数的使用方法。

parseInt() 函数

parseInt() 函数解析一个字符串参数,并返回一个指定基数的整数 (数学系统的基础)。

语法

parseInt(string, radix)

参数 描述
string 必需。要被解析的字符串。
radix

可选。表示要解析的数字的基数。该值介于 2 ~ 36 之间。

如果省略该参数或其值为 0,则数字将以 10 为基础来解析。如果它以 “0x” 或 “0X” 开头,将以 16 为基数。

如果该参数小于 2 或者大于 36,则 parseInt() 将返回 NaN

返回值

返回解析后的数字。

说明

当参数 radix 的值为 0,或没有设置该参数时,parseInt() 会根据 string 来判断数字的基数。

一下情况返回值为NaN

  • radix 小于 2 或大于 36
  • 第一个非空格字符不能转换为数字。