1.函数定义
1.1函数声明
function 函数名(值形参名, 默认值形参名 = 默认值, ...数组形参名) {
//函数体
}
1.2函数表达式
注意:命名函数表达式的右侧依然是函数表达式,不是函数声明。
//命名函数表达式
const f = function f2(形参名) {
//函数体
};
//匿名函数表达式
const f = function (形参名) {
//函数体
};
注意:命名函数表达式的函数名 f2 的作用域仅仅为函数体,比如可以用于函数递归,所以不可以用于函数体外。
const f = function f2() {
return 1;
};
console.log(f()); // 1
console.log(f2()); // 报错
1.3箭头函数表达式
//方式一
const f = (形参名) => 表达式;
//方式二
const f = (形参名) => {
//函数体
};
2.函数作用域
//全局函数
function f() {
}
function f1() {
//局部函数
function f2() {
}
}
3.形参分类
注意:在函数体调用数组形参时,数组形参名的前面无 ...。
| 名称 | 描述 |
| 值形参 | 按位置传递 |
| 默认值形参 | 按位置传递 |
...数组形参 | 用于收集多余的位置实参 |
4.函数调用表达式
函数名();
实参的传递只支持按位置传递方式,不支持按命名传递方式(可以使用对象字面量解构赋值模拟)。
//按位置传递方式
函数名(实参);
5.返回值
参考 return 语句。
原创文章,作者:huoxiaoqiang,如若转载,请注明出处:https://www.huoxiaoqiang.com/javascript/javascriptlang/4731.html