码迷,mamicode.com
首页 > 编程语言 > 详细

[Javascript] Replicate JavaScript Constructor Inheritance with Simple Objects (OLOO)

时间:2018-10-22 16:40:34      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:hose   prot   tin   bsp   sso   func   style   either   replicat   

Do you get lost when working with functions and the new keyword? Prototypal inheritance can be completely replicated without either of those two concepts. In this lesson we will convert an object created from the new keyword against a function, to simply objects linked to other objects.

 

Sometime If you find yourself doing `new` too much, for example:

function House(color){
    this.color = color
}

const myHouse = new House(‘white‘)

console.log(myHouse.color)  // white

 

It is possible just using Object, instead of constructort:

const house = {
 set houseColor(color){
     this.color = color
 }
}

const myHouse = Object.create(house)

console.log(myHouse)  // {color: ‘white‘}

Our end result is the same. We didn‘t have worry about creating a function and calling it with the new keyword. This pattern is called OLOO, or objects linking to other objects.

Since prototypes are simply objects, objects can be created in a manner so that they‘re easily delegated as prototypes of other objects. Object.create gives us the ability to easily create new objects that have specifically delegated prototype objects.

[Javascript] Replicate JavaScript Constructor Inheritance with Simple Objects (OLOO)

标签:hose   prot   tin   bsp   sso   func   style   either   replicat   

原文地址:https://www.cnblogs.com/Answer1215/p/9830543.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!