[b]1. 做为函数.[/b]
最普通的函数调用方式是函数调用。在非严格模式下,函数中的this的值是全局对象;在严格模式下this的值是undefined. 因此可以用this来判断当前环境是否严格模式
[b]2.方法调用[/b]
将函数赋给一个对象,这个函数就成了方法的对象
[b]3. 构造方法调用[/b]
在函数前面使用new,函数就被当作构造函数来使用
[b]4. 间接调用[/b]
用方法call() apply()间接调用函数
最普通的函数调用方式是函数调用。在非严格模式下,函数中的this的值是全局对象;在严格模式下this的值是undefined. 因此可以用this来判断当前环境是否严格模式
//判读当前是否严格模式
var strict =(function(){return !this;}());
document.writeln(strict);
[b]2.方法调用[/b]
将函数赋给一个对象,这个函数就成了方法的对象
var o= new Object();
function f0(x){
return x*x;
}
o.m=f0;
document.writeln(o.m(5)); //=>25
document.writeln(o['m'](5)); //=>25 //用中括号调用
//在函数被作为方法调用时,方法中的this代码调用对象
[b]3. 构造方法调用[/b]
在函数前面使用new,函数就被当作构造函数来使用
[b]4. 间接调用[/b]
用方法call() apply()间接调用函数