标签:对象冒充 蓝色 box 表示 type 函数名 var 红色 参数
函数是对象的一种,函数名是对象的指针
函数作为参数传递
var box=function(a,b) { return a(b); } function a(b){ return b+10; } alert(box(a,3));
arguments.callee调用自身
function box(num){ if(num<=1){ return 1; }else{ return num*arguments.callee(num-1); } } document.write(box(10));
this表示函数所处的作用域对象,如果在对象里面,就表示这个对象
全局下,this表示window
var box={ name:"田伟", func:function(){ return this.name; } } document.write(box.func());//田伟
函数的原型对象prototype 有2个方法call(),replay();
function box(a,b){ return a+b; } function sum(c,d){ return box.apply(this,[c,d]);
//return box.apply(this,arguments); } document.write(sum(3,4));
//冒充box,this表示box在window下面
function box(a,b){ return a+b; } function sum(c,d){ return box.call(this,c,d); } document.write(sum(3,555));
call 对象冒充
var color="蓝色"; var box={ color:"红色" } function showcolor() { return this.color; } document.write(showcolor.call(box));
标签:对象冒充 蓝色 box 表示 type 函数名 var 红色 参数
原文地址:http://www.cnblogs.com/yestian/p/6500943.html