-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathscript.js
More file actions
107 lines (90 loc) · 2.18 KB
/
script.js
File metadata and controls
107 lines (90 loc) · 2.18 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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
// classes: Main topic
// methods
// properties
// this
class Car {
constructor(name, color, topSpeed) {
// properties
this.name = name
this.color = color
this.topSpeed = topSpeed
this.currentSpeed = 0;
}
// getters & setters
getCurrentSpeed() {
return currentSpeed
}
zeroToSixty() {
setTimeout(() => {
console.log('pHEW! That was fast!')
this.currentSpeed = 60;
console.log(this.currentSpeed)
}, 3000)
}
drive(speed=10) {
// console.log('just drove 2 miles!')
this.currentSpeed += speed
console.log(`driving speed at ${this.currentSpeed} mph`)
}
brake() {
console.log('braking!')
this.currentSpeed -= 10
}
stop() {
console.log('coming to a screeching halt!')
this.currentSpeed = 0
}
}
// porsche, 'yellow', 250
const ferrari = new Car('ferrari', 'red', 250)
ferrari.drive()
ferrari.drive()
ferrari.drive()
ferrari.drive()
ferrari.drive()
console.log(ferrari.currentSpeed)
ferrari.brake()
ferrari.stop()
console.log(ferrari.currentSpeed)
const porsche = new Car('Porsche', 'yellow', 250)
console.log(porsche.name)
console.log(porsche.color)
console.log(porsche.topSpeed)
// const nums = [1, 2, 3, 4, 5]
// nums.forEach(_ => porsche.drive())
porsche.drive(40)
porsche.drive(80)
console.log(porsche.currentSpeed)
porsche.zeroToSixty()
porsche.stop()
console.log(porsche.currentSpeed)
// console.log(ferrari.name)
// console.log(ferrari.color)
// console.log(ferrari.topSpeed)
// console.log(ferrari.currentSpeed)
// ferrari.drive()
// ferrari.brake()
// console.log(ferrari.currentSpeed)
// ferrari.drive()
// console.log(ferrari.currentSpeed)
// ferrari.drive()
// ferrari.drive()
// console.log(ferrari.currentSpeed)
// ferrari.zeroToSixty()
// console.log(ferrari.currentSpeed)
// console.log(ferrari)
// you can only have methods inside of classes
// const numbers = [1, 2, 3]
// numbers.push(4) // method
// // console.log(typeof )
// console.log(numbers)
Array.prototype.myPush = function(item) {
this[this.length] = item
return this
}
const fruits = ['🍌', '🍓', '🍪', '🍐', '🍎']
fruits.myPush('🥝')
fruits.myPush('🍪')
fruits.myPush('🍓')
fruits.myPush('🍊')
console.log(fruits)