Chinaunix首页 | 论坛 | 博客
  • 博客访问: 268452
  • 博文数量: 103
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 705
  • 用 户 组: 普通用户
  • 注册时间: 2013-05-02 16:15
文章分类

全部博文(103)

文章存档

2014年(8)

2013年(95)

我的朋友

分类: JavaScript

2013-12-23 17:24:06

//function类型
//1.函数可以传递函数
function box(sum,num){
return sum+num;
}
function sum(num){
return num+10;
}
var result=box(sum(10),10);
alert(result);

//arguments.callee


function box(num){
if(num<=1){
return 1;
}else{
return num*arguments.callee(num-1);//arguments.callee调用自身实现递归
}
}
alert(box(4));


//this引用
//alert(this);//表示windows,因为在windows下,windows表示全局
//var color='红色的';//这里color是全局变量,而color又是windows下的属性
//alert(this.color);
//alert(window.color);


window.color="红色的";
alert(this.color);


var box={
color:"蓝色的",//这里的color是局部变量
sayColor:function(){
alert(this);
alert(this.color);
}//this代表box
}
alert(this);
box.sayColor();

//apply和call可以冒充另外一个函数
function box(num1,num2){
return num1+num2;
}
function sum(num1,num2){
return box.apply(this,[num1,num2])//this表示window作用域,[]表示传递的参数
}
alert(sum(1,2));


var color="蓝色的";//全局


var box={
color:"红色的",
};


function sayColor(){
alert(this.color);
};
sayColor();
sayColor.call(box);




阅读(736) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~