如何在JavaScript中定义继承

  介绍

如何在JavaScript中定义继承?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

JavaScript的特点

1. JavaScript主要用来向HTML页面添加交互行为。   2. javascript可以直接嵌入到HTML页面,但写成单独的js文件有利于结构和行为的分离。   3.JavaScript具有跨平台特性,在绝大多数浏览器的支持下,可以在多种平台下运行。

基类定义如下:

//, base 类   function 动物(t)   {   ,,如果(typeof  t===& # 39;字符串# 39;)   ,,,this.type=t;   其他的,,   ,,{   ,,,如果(t)   ,,,,,this.type=t.toString ();   ,,,   ,,,,,this.type=& # 39;动物# 39;   ,,}   ,,this.speak=function (str)   ,,{   ,,,如果(str)   ,,,,,console.log (this.type + & # 39;, said  & # 39; + str);   ,,,   ,,,,,throw “please  specify  what 你want 用说!“;   ,,}   }

1。原型继承(javascript类库本身基于原型继承)

字符串、数字、布尔这三大原始类型我们可以很直接的通过原型检查到他们继承自对象。

日期、RegExp,数组这三应该是间接继承了对象,他们的原型属性很特殊:

Date.prototype =Invalid 日期   RegExp.prototype=/(?)   数组中。原型=[]

原型继承代码如下:(可以看到视频软件名原型链上的动物和对象)

//, Monkey :, Animal    function 猴子(姓名、年龄)   {   ,,this.name=名称;   ,,this.age=年龄;   }   Monkey.prototype=new 动物(& # 39;猴子# 39;);//Example  01   var  m=new 猴子(& # 39;codeMonkey& # 39;, 10);   ,,/*   ,,,猴子:   ,,,年龄:10   ,,,的名字:,“codeMonkey"   ,,,,,__proto__:动物   ,,,,,说:,function  (str)   ,,,,,类型:,“Monkey"   ,,,,,,,__proto__:动物   ,,,,,,,构造函数:,function 动物(t)   ,,,,,,,,,__proto__:, Object    */console.log (m.type);//,猴子   console.log (m.name);,//codeMonkey   console.log (m.age);//, 10   m.speak (& # 39; hello  & # 39;),//, Monkey  said  hello 世界

2。调用父类构造函数(通过传递子类的这指针,将原本是父类的公开成员直接添加到了子类中,从子类原型链中无法看出继承关系)

//,人类:Animal    function 人类(id、名称)   {   ,,,//,call  base 类# 39;s  constuctor 函数   ,,Animal.call(这& # 39;人类# 39;);   ,,this.id=id;   ,,this.name=名称;   }   var  h=new 人类(& # 39;莱昂# 39;);/*   id: 1   名称:,“leon"   说:function  (str)   类型:,“Human"   ,,,__proto__:人类   构造函数:,,,,function 人类(id、名称)   ,,,,,__proto__:对象   */h.speak (& # 39; hello  & # 39;);,//, Human  said  hello  world    console.log (h.type);,//,人类

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

如何在JavaScript中定义继承