-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathObjetos
63 lines (44 loc) · 1.27 KB
/
Objetos
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
//Existen 4 formas de construir objetos en JS
//1. Object literal
var persona = {
nombre: "Martin",
edad: 12
}
//2. Usando funciones constructoras
function Auto(marca, color) {
this.marca = marca;
this.color = color;
}
var miAuto = new Auto("ford","rojo")
//3. Usando Object.Create
// Object.create(prototype_object, object_properties)
var food = {
fruta: "Manzana"
}
var moreFood = Object.create(food, {
vegetal: {
value: "calabaza"
}
})
//En este ejemplo como food es el prototipo de moreFood, desde el objeto moreFood.fruta se puede acceder al valor "Manzana"
//4. Usando class
class Perros {
constructor(nombre, raza) {
this.nombre = nombre;
this.raza = raza;
}
ladrar() {
console.log("guau")
}
}
var manchas = new Perro("manchas","dalmata")
//La palabra "this"
var objeto1 = {a: "local"}
var a = "global"
function whatsThis() {
return this.a
}
whatsThis()
// En este caso la función retornará el valor "global", ya que el this estará apuntando al objeto global window, que tiene seteada la variable a
whatsThis.call(objeto1)
//En este caso, la función retornará el valor "local". Esto es porque usando call, se define a donde debe apuntar el this al usar la función, en este caso al objeto1.