函数的创建s中的函数也是一个对象。
普通对象只能装属性
函数中可以封装一些功能,一些代码,在需要的时候调用,来执行这些代码来实现功能
创建一个函数对象
//创建函数的两种格式
var a = function(){
//里面可以封装大量的代码
.......
}
function a(){
//里面可以封装大量的代码
......
}
//两种方式在调用的时候都只能要用a()的方式
a();
函数的参数
eg:定义一个两个求两个数之和的函数
function sum(a,b){//在括号里面定义形参,多个形参之间使用逗号隔开
return a+b;
}
//在调用该函数时,可以在()中指定实参
sum(1,2);//3
sum(4,5,6,7,8);//多余的实参不会被赋值
//如果我们在调用时候写入的实参少于形参的个数,则没有对应的实参的形参将是undefined
sum(4);//相当于sum(4,undefined) 结果为NaN
//函数的实参可以是任意得类型
函数得返回值
function a(a,b){
return a+b;
alert("hello js");
//这个语句不执行,因为函数有上面得return语句,return之后下面的代码将不再执行
}
//注意:如果return 后面不跟任何值,则返回一个undefined
//如果函数中不写return语句,也是返回一个undefined
实参可以是任意的数据类型,可以是一个对象,也可以是一个函数
使用return可以结束整个函数。
立即执行函数
function(){
.....
}
//这种函数声明会报错,因为编译器不能识别是一个整体
//函数对象
(function(){
.....
})
//如果用()把整个函数括起来,可以看成一个整体,则不报错
(function(){
console.log("hello,js!");
})();
//这样子相当于直接调用该函数直接执行
立即执行函数往往只会执行一次(没有变量保存它)
(function(a,b){
console.log(a);
console.log(b);
})(110,112);