forked from LaunchCodeEducation/javascript-projects
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathClassMethods.js
More file actions
33 lines (29 loc) · 809 Bytes
/
Copy pathClassMethods.js
File metadata and controls
33 lines (29 loc) · 809 Bytes
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
// Here we assign the method inside the constructor
class AstronautI {
constructor(name, age, mass) {
this.name = name;
this.age = age;
this.mass = mass;
this.reportStats = function () {
let stats = `${this.name} is ${this.age} years old and has a mass of ${this.mass} kg.`;
return stats;
};
}
}
// Here we assign the method outside of the constructor
class AstronautO {
constructor(name, age, mass) {
this.name = name;
this.age = age;
this.mass = mass;
}
reportStats() {
let stats = `${this.name} is ${this.age} years old and has a mass of ${this.mass} kg.`;
return stats;
}
}
let fox = new AstronautI("Fox", 7, 12);
let hippo = new AstronautO("Hippo", 25, 1000);
// console.log(fox);
console.log(hippo);
console.log(hippo.reportStats());