Task
We provide the implementation for a Rectangle class in the
editor. Perform the following tasks:
1. Add an area method to Rectangle's prototype.
2. Create a Square class that satisfies the following:
It is a subclass of Rectangle.
It contains a constructor and no other methods.
It can use the Rectangle class' area method to print the
area of a Square object.
Locked code in the editor tests the class and method
implementations and prints the area values to
STDOUT.
Solution:
|
class Rectangle { constructor(w, h) { this.w = w; this.h = h; } } Rectangle.prototype.area=function(){ return (this.h*this.w); } class Square extends Rectangle{ constructor(s){ super(s); this.w=s; this.h=s; } } if
(JSON.stringify(Object.getOwnPropertyNames(Square.prototype)) === JSON.stringify([ 'constructor' ])) { const rec = new Rectangle(3, 4); const sqr = new Square(3); console.log(rec.area()); console.log(sqr.area()); }
else { console.log(-1); console.log(-1); } |
No comments:
Post a Comment