函数是什么:函数是一种特殊的对象,特殊性表现在函数中存放的为代码,是可以执行的对象。
下列叙述中以函数名为test为例。
【1】函数的创建
①通过函数声明的方式创建。
function test(函数的形参)
{
函数主体
}
②通过表达式的方式创建。
var test=function(函数的形参)
{
函数主体
}
【2】函数的调用
【1】var obj=new test();
【2】obj.test();
采用该方式进行调用时,需先将待调用的函数设置为对象obj的一个方法,然后利用“obj.方法名()”的方式进行调用。
【3】test();
【4】test.call(obj)或test.apply(obj);
采用该方式进行调用时,即使obj中没有test方法,obj也能通过调用call()/apply()方法,让test函数成为obj临时的方法。【区别于方法2】
【3】函数采用不同调用方式时所对应的this
【1】var obj=new test();
this:obj
【2】obj.test();
this:obj
【3】test();
this:window
【4】test.call(obj)或test.apply(obj);
this:obj