JavaScript: длина функции
что означает длина функции в JavaScript
Что такое длина функции в JavaScript?
let sayHi = name => 'hi' + name,
confirmSubscription = () => "Would you like to subscribe?";
console.log(sayHi.length);
console.log(confirmSubscription.length);
Какой результат мы увидим в консоли?
В языке программирования JavaScript многие сущности имеют длину: свойство length
.
Например, свойство length
определяет количество элементов массива:
let arr = ['a', 'b', 'c'];
console.log(arr.length);
С помощью свойства length
можно узнать количество символов в строке, то есть, буквально, определить длину строки:
let welcomeMessage = "Hello!";
console.log(welcomeMessage.length); // 6
Обычные объекты в JavaScript лишены такого свойства:
let user = {name: "Jack", age: "32"};
console.log(user.length) // undefined
А у функций это свойство есть. И оно определяет вовсе не длину функции, а количество передаваемых ей параметров:
let sum = (a, b) => a + b;
console.log(sum.length); // 2
let log = (s) => console.log(s);
console.log(log.length); // 1
let noop = () => {};
console.log(noop.length); // 0
Таким образом, возвращаясь к нашей задаче мы увидим количество параметров каждой функции: 1
и 0
.
let sayHi = name => 'hi' + name,
confirmSubscription = () => "Would you like to subscribe?";
console.log(sayHi.length); // 1
console.log(confirmSubscription.length); // 0
Спасибо за внимание.