10.14日
- 基本的匿名函数
可以直接定义一个匿名函数,然后立即调用它。
javascript
(function() {
console.log("这是一个匿名函数!");
})();
2. 作为回调函数
匿名函数非常常见于回调场景,比如数组的方法。
javascript
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map(function(num) {
return num * 2;
});
console.log(doubled); // [2, 4, 6, 8, 10]
3. 事件处理
在添加事件监听器时,通常会用到匿名函数。
javascript
document.getElementById("myButton").addEventListener("click", function() {
alert("按钮被点击了!");
});
4. 箭头函数
ES6引入的箭头函数也是一种无名函数的形式,语法更简洁。
javascript
const numbers = [1, 2, 3, 4, 5];
const doubled = numbers.map(num => num * 2);
console.log(doubled); // [2, 4, 6, 8, 10]
5. 使用闭包
匿名函数也常用于闭包,在函数内部创建私有变量。
javascript
const counter = (function() {
let count = 0; // 私有变量
return function() {
count++;
return count;
};
})();
console.log(counter()); // 1
console.log(counter()); // 2
关于JS中函数中返回return的细节
return 语句后没有跟任何值,函数将默认返回 undefined。
javascript
function noReturnValue() {
return;
}
console.log(noReturnValue()); // undefined
5. 多行返回值的陷阱
在 return 语句之后直接换行,JavaScript 会在 return 和换行符之间插入一个分号,导致返回 undefined,这可能不是你想要的结果。
javascript
function getValue() {
return
42;
}
console.log(getValue()); // undefined