当前位置: 首页 > news >正文

可以做产品设计网站中国软件公司排行

可以做产品设计网站,中国软件公司排行,南宁建设网,苏州模板建站定制Prototype pattern Prototype pattern可便于同类型的多个对象共享属性。原型#xff08;prototype#xff09;是JS原生的对象#xff0c;其他对象可以通过原型链#xff08;prototype chain#xff09;来访问原型。单独看这句描述可能还是有点儿抽象#xff0c;下面通过…Prototype pattern Prototype pattern可便于同类型的多个对象共享属性。原型prototype是JS原生的对象其他对象可以通过原型链prototype chain来访问原型。单独看这句描述可能还是有点儿抽象下面通过具体的示例来详细阐述。 class Dog {constructor(name) {this.name name;}bark() {return Woof!;} }const dog1 new Dog(Kadi); console.log(dog1.__proto__); console.log(Dog.prototype);这里可以看到constructor有一个name属性;根据ES6类的语法规则所有在类中定义的属性(本例的属性bark)都自动加入到类的prototype中,Dog类本身有两个属性constructor和bark。 有两种方式可以查看类的原型中的属性一种是通过类本身的prototype另一种是通过实例的__proto__。 从上图的调试信息可以看到Dog类的prototype也是一个object其中有两个属性bark和constructor另外还有一个原型对象([[Prototype]])。 通常类的实例的__proto__直接引用类的prototype如果类本身不包含某个属性JS就会向下搜索原型链查看在原型链中是否能找到被访问的属性。而在dog1实例中发现有两个[[prototype]]而且还有包含关系这就是所谓的原型链。 因为所有实例都可以访问类的原型对象因此原型模式使得实例在访问相同属性时不用每次都创建该属性的副本。只需要将属性加入到原型中则所有的实例都可以访问。另外在创建实例对象后也支持添加新的属性到原型中其他实例对象也可以访问这个新加入的属性。 const dog2 new Dog(Husky) Dog.prototype.play () console.log(playing); dog1.play();我们再创建一个“Husky”的实例然后对Dog类的原型添加一个新的属性play接着通过dog1实例来调用play函数看能否正常运行。 从运行结果来看dog1能正常访问play属性。 再举个例子定义一个SuperDog并继承DogSuperDog有一个fly属性。通过创建一个SuperDog的实例dog3且dog3调用bark属性 class SuperDog extends Dog {constructor(name) {super(name);}fly() {console.log(Flying!);} }const dog3 new SuperDog(Super) dog3.fly(); dog3.bark(); console.log(dog3.__proto__);此示例中有3级原型链实例访问属性的搜索路径也非常清晰。dog3._proto_ - SuperDog.prototype - Dog.prototype。 完整示例代码 class Dog {constructor(name) {this.name name;}bark() {console.log(Woof!);} }class SuperDog extends Dog {constructor(name) {super(name);}fly() {console.log(Flying!);} }const dog1 new Dog(Kadi); console.log(dog1.__proto__); console.log(Dog.prototype);const dog2 new Dog(Husky) Dog.prototype.play () console.log(playing);dog1.play();const dog3 new SuperDog(Super) dog3.fly(); dog3.bark(); console.log(dog3.__proto__);debugger
http://www.zqtcl.cn/news/50607/

相关文章:

  • 专业的网站设计师域名的申请及注册流程
  • 郑州网站制作工具网站做百度地图定位
  • 合肥网站开发培训学校jsp电商网站开发教程
  • 爱站工具包官网下载温州做网站建设公司
  • 班级网站 建设模板网站什么英文字体
  • 网站的域名是什么意思在线crm软件
  • 做网站 二维码登录如何自己建网站企业网站
  • 淄博张店外贸建站公司wordpress 网络图片不显示图片
  • wordpress视频站主题wordpress公众号
  • 外贸soho建网站保山市建设厅网站
  • 扁平式网站源码wordpress产品属性搭配
  • 做好的网站如何上线互联网高端官网
  • 作网站流程怎么做网站把图片发到网上
  • 哪些网站专门做动漫的wordpress主题演示
  • 南京市秦淮区建设局网站品牌建设内容
  • 重庆门户网站推广方案网络运营师资格证
  • 广州手机网站建设联系电话凡科互动公司
  • 宁波网站建设电话传奇购买域名做网站
  • 那个网站做图片做网站公司的年终总结
  • 湘潭九华网站wordpress主页标题显示不全
  • 导购网站怎么做百度怎么自己做网站
  • 校园网站建设 德育网站模板绑定域名
  • 建设银行成都开发中心网站服务器安装完面板怎么做网站
  • 网站建设推广合同书技校平面设计主要做什么
  • 清远网站seo公司无锡网站制作哪家好
  • 网站建设洛阳惠州网站建设排名
  • 备案网站怎么做企业网站创建小结
  • php网站后台怎么登陆wordpress主题收费
  • 长尾关键词挖掘工具爱网站深圳市住房和建设局投诉电话
  • 安丘市建设局官方网站广西桂林自驾游最佳线路推荐