-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathclasses.js
More file actions
65 lines (53 loc) · 1.89 KB
/
classes.js
File metadata and controls
65 lines (53 loc) · 1.89 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
// Copy and paste your prototype in here and refactor into class syntax.
// Test your volume and surfaceArea methods by uncommenting the logs below:
// console.log(cuboid.volume()); // 100
// console.log(cuboid.surfaceArea()); // 130
/* ===== Prototype Practice ===== */
// Task: You are to build a cuboid maker that can return values for a cuboid's volume or surface area. Cuboids are similar to cubes but do not have even sides. Follow the steps in order to accomplish this challenge.
/* == Step 1: Base Constructor ==
Create a constructor function named CuboidMaker that accepts properties for length, width, and height
*/
class CuboidMaker {
constructor(newObj) {
this.length = newObj.length;
this.width = newObj.width;
this.height = newObj.height;
}
volume() {
return this.length * this.width * this.height;
};
surfaceArea() {
return 2 * ((this.length * this.width) + (this.length * this.height) + (this.width * this.height))
}
}
/* Stretch Task:
Extend the base class CuboidMaker with a sub class called CubeMaker.
Find out the formulas for volume and surface area for cubes and create those methods as well.
Create a new cube object and log out the results of your new cube.
*/
class CubeMaker extends CuboidMaker {
constructor(iceCube) {
super(iceCube);
}
newVolume() {
return this.height * this.width * this.length
}
newSurfaceArea() {
return 6 * (this.width **2)
}
}
const cuboid = new CuboidMaker({
length: 4,
width: 5,
height: 5
})
const cube = new CubeMaker({
width: 5,
height: 5,
length: 5
})
// Test your volume and surfaceArea methods by uncommenting the logs below:
console.log(cuboid.volume()); // 100
console.log(cuboid.surfaceArea()); // 130
console.log(cube.newVolume()); //125 Volume of a cube is V=side3 0r **3
console.log(cube.newSurfaceArea()) //150 Cube surface are Cube (surface) 6 × side2