js 原型/ 原型属性(设置,修改)/ 什么时候用原型 和构造函数/ 继承/////////////

 // 什么时候用到 原型,什么时候用构造器

 			 // 混合使用

 			 function Aa(name,age){
 			 /*	this.name  = 'xxx';
 			 	this.age = 99;*/
 			 	this.name = name;
 			 	this.age  = age;

 			 /*	this.action = function(){
 			 		console.log(aa.name);
 			 	}*/
 			 }
 			 Aa.prototype.action = function(){
 			 	console.log(this.name);
 			 };

 			 // 如果是一万个,可能会有内存溢出
 			 var a = new Aa('fff',34);
 			 a.action();

 			 var b = new Aa("ffx",340);
 			b.action();

设置原型属性   修改原型属性

 function Person(){

 			 };

 			 Person.prototype.name = 'fxb';
 			 Person.prototype.age = 24;
 			 Person.prototype.action = function(){
 			 	console.log(this.name);
 			 };

 			 var person1 = new Person();
 			 person1.action();
 			 // 修改原型  不常用
 			 person1.__proto__.name = 'fefefefe';

 			 var person2 = new Person();
 			 // name 如果有自己的name属性,那就先用自己的属性,不然就用原型属性
 			 person2.name = 'fff';
 			 person2.action();

 // 检测实例是否属于原型
           

 // 检测实例是否属于原型
 			 console.log(Person.prototype.isPrototypeOf(person1));

// 什么时候用到 原型,什么时候用构造器

              // 混合使用

 // 什么时候用到 原型,什么时候用构造器

 			 // 混合使用

 			 function Aa(name,age){
 			 /*	this.name  = 'xxx';
 			 	this.age = 99;*/
 			 	this.name = name;
 			 	this.age  = age;

 			 /*	this.action = function(){
 			 		console.log(aa.name);
 			 	}*/
 			 }

//共用的用原型
 			 Aa.prototype.action = function(){
 			 	console.log(this.name);
 			 };

 			 // 如果是一万个,可能会有内存溢出
 			 var a = new Aa('fff',34);
 			 a.action();

 			 var b = new Aa("ffx",340);
 			b.action();

继承

 			// 继承

 			function Action(){};
 			Action.prototype.dome = function(){
 				console.log("wode");
 			};


 			function Son(){};
 			Son.prototype = new Action();
 			var s = new Son();
 			s.dome();

实例  构造器  原型

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值