函数 function
函数也是一个对象
函数中可以封装一些功能(代码),在需要时可以执行这些功能(代码)
函数中可以保存一些代码在需要的时候调用
使用typeof检查一个函数对象时,会返回function
可以将要封装的代码以字符串的形式传递给构造函数(我们在实际开发中很少使用构造函数来创建一个函数对象)
var fun = new Function("console.log('Hello 这是我的第一个函数');");
封装到函数中的代码不会立即执行
函数中的代码会在函数调用的时候执行
调用函数
语法:函数对象([实参1,实参2...实参N]);
当调用函数时,函数中封装的代码会按照顺序执行
使用 函数声明 来创建一个函数
语法:
function 函数名([形参1,形参2...形参N]){
语句...
}
使用 函数表达式 来创建一个函数
var 函数名 = function([形参1,形参2...形参N]){
语句....
}
函数的参数
形参:形式参数
- 定义函数时,可以在()中定义一个或多个形参,形参之间使用,隔开
定义形参就相当于在函数内声明了对应的变量但是并不赋值,
形参会在调用时才赋值。
实参:实际参数
- 调用函数时,可以在()传递实参,传递的实参会赋值给对应的形参,
调用函数时JS解析器不会检查实参的类型和个数,可以传递任意数据类型的值,如果有可能则需要对参数进行类型的检查。函数的实参可以是任意的数据类型
调用函数时,解析器也不会检查实参的数量 ,如果实参的数量大于形参,多余实参将不会赋值,
如果实参的数量小于形参,则没有对应实参的形参将会赋值undefined