发布于 2026-01-06 3 阅读
0

JavaScript 面试题 #46:JS 函数的长度

JavaScript 面试题 #46:JS 函数的长度

JavaScript面试题 #46

JavaScript 函数的字段值是什么length?控制台会输出什么内容?

许多 JavaScript 实体都有这个length字段。

例如,它保存 JavaScript 数组中的元素总数。

const arr = ['a', 'b', 'c'];
console.log(arr.length);    // 3
Enter fullscreen mode Exit fullscreen mode

对于字符串而言,它指的是字符数。字面意义上,就是字符串的长度。

const welcomeMessage = 'Hello!';
const goodbyeMessage = 'Goodbye!';
const emptyString = '';

console.log(welcomeMessage.length);  // 6
console.log(goodbyeMessage.length);  // 8
console.log(emptyString.length);     // 0
Enter fullscreen mode Exit fullscreen mode

普通对象默认情况下没有该length字段。

const user = { name: 'Jack', age: '32'};
console.log(user.length);  // undefined
Enter fullscreen mode Exit fullscreen mode

但函数确实包含这个信息!它存储的不是难以定义的“函数长度”,而是函数参数的数量。

const sum = (a, b) => a + b;
const log = (s) => console.log(s);
const noop = () => {};

console.log(sum.length);  // 2
console.log(log.length);  // 1
console.log(noop.length); // 0
Enter fullscreen mode Exit fullscreen mode

答案:该length字段保存所有 JavaScript 函数的参数数量。因此,输出结果为:

1
0
Enter fullscreen mode Exit fullscreen mode

因为该函数sayHello有一个参数,而该函数confirmSubscription没有参数。

学习全栈 JavaScript

文章来源:https://dev.to/coderslang/javascript-interview-question-46-length-of-js-functions-494f