1.函数是第一类对象
在我们的认知中通常函数和对象的结构是有所区分的,实现的方式也有所不同,但在javascript中,函数是作为对象的身份出现的,函数可以实现以下功能:
①通过字面量创建
②赋值给变量或属性
③作为函数参数传递
④作为函数的结果返回
⑤赋值给属性和方法
2.函数的属性
函数和对象一样拥有属性,这带来了许多好处,比如:
**①函数的存储(可以添加id等属性来存储)
②函数的自记忆(缓存)
**
3.函数的定义
有四种方法可以对函数定义:
①函数声明和函数表达式
②箭头函数
③函数构造函数
④生成器函数
其中函数声明和表达式是两种最主要的函数类型
4.参数
没有赋值的形参值为undefined
传入额外实参不会赋值给任何一个命名形参
剩余参数:可以通过
function multi(input1,…input2){
}
来获取剩余参数
ES6可以传入默认参数,在很多场合代码简便
function multi(input1,input2="default",message = input1+input2){
return message
}
}