javascript中的call和apply

调用其他对象的方法

	function person(){
		this.name = "person";
		this.show = function(){
			alert(this.name);
		}
	}
	
	function good_person(){
		this.name = "good_persion";
	}
	
	var p = new person();
	var g = new good_person();
	
	//g调用p的方法
	p.show();  //person
	p.show.call(g); //good_person
	p.show.apply(g); //good_person

继承实现

	function person(name){
		this.name = name;
		this.show = function(){
			alert(this.name);
		}
	}
	
	function good_person(name){
		//实现继承,用person对象代替good_person
// 		person.call(this, name);
		person.apply(this,[name]);
	}
	
	var g = new good_person("good_person");
	g.show(); //good_person


你可能感兴趣的:(JavaScript,call,apply)