This commit is contained in:
Ilya Kantor 2017-01-18 09:53:11 +01:00
parent 6c9c2219ba
commit a7c00e1c76
14 changed files with 260 additions and 252 deletions

View file

@ -0,0 +1,43 @@
importance: 5
---
# Class extends Object?
As we know, all objects normally inherit from `Object.prototype` and get access to "generic" object methods.
Like demonstrated here:
```js run
class Rabbit {
constructor(name) {
this.name = name;
}
}
let rabbit = new Rabbit("Rab");
*!*
// hasOwnProperty method is from Object.prototype
// rabbit.__proto__ === Object.prototype
alert( rabbit.hasOwnProperty('name') ); // true
*/!*
```
So, is it correct to say that `"class Rabbit extends Object"` does exactly the same as `"class Rabbit"`, or not?
Will it work?
```js
class Rabbit extends Object {
constructor(name) {
this.name = name;
}
}
let rabbit = new Rabbit("Rab");
alert( rabbit.hasOwnProperty('name') ); // true
```
If it won't please fix the code.