以下是总结 JavaScript 函数相关知识点的攻略:
JavaScript 函数基础
定义函数
function funcName(param1, param2, ..., paramN) {
// 函数体
return expression;
}
其中,funcName
是函数名,param1
到paramN
是参数,函数体中的 expression
是函数返回值。
函数调用
funcName(arg1, arg2, ..., argN);
调用函数时,传递的参数必须与函数定义时指定的参数个数和顺序相同。
函数作用域
函数可以访问它定义时所处的词法作用域中的变量。定义在函数中的变量是局部变量,而没有使用 var
关键字声明的变量是全局变量。
var globalVar = 'global var';
function func() {
var localVar = 'local var';
console.log(globalVar); // 输出 'global var'
console.log(localVar); // 输出 'local var'
}
func();
console.log(globalVar); // 输出 'global var'
console.log(localVar); // 报错 'localVar is not defined'
函数表达式
函数表达式是把一个函数赋值给一个变量。
var funcName = function(param1, param2, ..., paramN) {
// 函数体
return expression;
};
JavaScript 函数高级特性
匿名函数
匿名函数没有指定函数名。
var func = function(param1, param2, ..., paramN) {
// 函数体
return expression;
};
立即执行函数
立即执行函数是在定义后立即调用的函数。它常用于创建私有作用域。
(function() {
// 函数体
})();
回调函数
回调函数是在异步操作完成后执行的函数。它可以作为参数传递给其他函数,以在异步操作完成时被调用。
function fetchData(url, callback) {
// 发送请求
var response = ...;
// 异步操作完成后调用回调函数
callback(response);
}
function handleData(response) {
// 处理数据
}
fetchData('example.com/api/data', handleData);
示例说明
示例一:数组排序
var arr = [5, 3, 1, 4, 2];
// 使用匿名函数作为参数对数组进行排序
arr.sort(function(a, b) {
return a - b;
});
console.log(arr); // 输出 [1, 2, 3, 4, 5]
在上述示例中,我们使用了匿名函数作为 .sort()
方法的参数来实现数组排序。
示例二:事件监听
<button id="myButton">Click Me!</button>
// 获取按钮元素
var button = document.getElementById('myButton');
// 添加点击事件监听
button.addEventListener('click', function() {
console.log('Button clicked!');
});
在上述示例中,我们使用了匿名函数作为 .addEventListener()
方法的参数来实现事件监听。在按钮被点击后,匿名函数会被调用并输出信息到控制台。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:总结js函数相关知识点 - Python技术站