1.函数写法
//普通的传递值的写法
function sum1(x, y) {
return x + y;
}
const res = sum1(2, 3);
console.log(res);
//传递对象的方式,调用时需要传递一个对象过去
function sum2({x, y, z = 10}) {
console.log(x, y, z);
}
//调用方式一
sum2({
x: 2,
y: 3
})
//调用方式二
obj = {
x:2,
y:3
}
sum2(obj)
2.常量函数
//直接将返回值赋予常量
const sum2 = function(x, y)
{
return x + y;
}
//若不写参数,默认返回的整个函数体
function(x, y)
{
return x + y;
}
//传参的写法,会直接调用函数 --> 这里打印出结果:3
console.log(sum2(1, 2))
3.箭头函数
//经典格式: 函数名 = ( 参数 ) => { 方法体 }
const sum3 = (x, y) => {
return x + y;
}
console.log(sum3)
//当方法体只有一行时,花括号可以省略:
const sum4 = (x, y) => x + y;
console.log(sum4)
//当只有一个参数时,括号可以省略:
const sum5 = x => { 方法体 }
4.回调函数
//匿名回调函数
success(function(res){
console.log(res)
})
//箭头函数回调
success((res) => {
console.log(res)
})
//参数可以为空
success(() => {
console.log("success!")
})
//简写
success((res) => console.log(res))
注意事项:
1、箭头函数本身没有this指向,他的this指向他的上级关系
2、ES6规定了可以使用“箭头” =>
来定义一个函数,语法更加简洁
3、箭头函数里是没有arguments,super和new.target
4、不能绑定arguments
,只能使用...args
,rest参数展开运算来获取当前参数的数组;
5、箭头函数表达式更适用于那些本来就需要匿名函数的地方,但不能作为构造函数
6、箭头函数不能定义原型下的方法