`
妖术在烧纸
  • 浏览: 9329 次
  • 性别: Icon_minigender_2
  • 来自: 成都
社区版块
存档分类
最新评论

Js学习

阅读更多
Function函数
1、arguments.callee函数
 function sum(num){
		if(num<1){
			return 1
		}else{
			return num * arguments.callee(num-1);  //arguments.callee调用自身,实现递归
		}
	}
	alert(sum(5));

2、 apply(传递数组)、call(传递参数)改变作用域
// apply方法
function box(num1,num2){
return num1+num2;
}

function sum(num1,num2){
return box.apply(this,arguments);//arguments当作数组传值
}
alert(sum(10,10));

//call方法
function box(num1,num2){
		return num1+num2;
	}

	function sum(num1,num2){
		return box.call(this,num1,num2);//arguments当作数组传值
	}
	alert(sum(10,10));


//	用call实现对象冒充,降低方法和函数之间的耦合度
	var color = "red";
	var box = {
		color : "bule"
	}
	function sayColor(){
		alert(this.color);
	}

	// sayColor();
	// sayColor.call(window);//全局
	// sayColor.call(this);//全局
	sayColor.call(box);//局部



分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics