forked from mouredev/hello-javascript
-
Notifications
You must be signed in to change notification settings - Fork 0
/
18-objects.js
120 lines (88 loc) · 2 KB
/
18-objects.js
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
108
109
110
111
112
113
114
115
116
117
118
119
120
/*
Clase 5 en vídeo | 07/08/2024
Objetos, desestructuración, propagación y clases
https://www.youtube.com/live/SBXEpAx_y_Q?si=Sbqqa2-_eGwsUkH-&t=958
*/
// Objetos
// Sintaxis
let person = {
name: "Brais",
age: 37,
alias: "MoureDev"
}
// Acceso a propiedades
// Notación punto
console.log(person.name)
// Notación de corchetes
console.log(person["name"])
// Modificación de propiedades
person.name = "Brais Moure"
console.log(person.name)
console.log(typeof person.age)
person.age = "37"
console.log(person.age)
console.log(typeof person.age)
// Eliminación de propiedades
delete person.age
console.log(person)
// Nueva propiedad
person.email = "[email protected]"
person["age"] = 37
console.log(person)
// Métodos (funciones)
let person2 = {
name: "Brais",
age: 37,
alias: "MoureDev",
walk: function () {
console.log("La persona camina.")
}
}
person2.walk()
// Anidación de objetos
let person3 = {
name: "Brais",
age: 37,
alias: "MoureDev",
walk: function () {
console.log("La persona camina.")
},
job: {
name: "Programador",
exp: 15,
work: function () {
console.log(`La persona de ${this.age} años de experiencia trabaja.`)
}
}
}
console.log(person3)
console.log(person3.name)
console.log(person3.job)
console.log(person3.job.name)
person3.job.work()
// Igualdad de objetos
let person4 = {
name: "Brais Moure",
alias: "MoureDev",
email: "[email protected]",
age: 37
}
console.log(person)
console.log(person4)
console.log(person == person4)
console.log(person === person4)
console.log(person.name == person4.name)
// Iteración
for (let key in person4) {
console.log(key + ": " + person4[key])
}
// Funciones como objetos
function Person(name, age) { // Debería ser una clase
this.name = name
this.age = age
}
let person5 = new Person("Brais", 37)
console.log(person5)
console.log(person5.name)
console.log(typeof person5)
console.log(typeof person4)