-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path8-parametros.js
More file actions
45 lines (39 loc) · 1.17 KB
/
8-parametros.js
File metadata and controls
45 lines (39 loc) · 1.17 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
var ivan = {
nombre: 'Ivan Farid',
apellido: 'Espadas Escalante',
edad: 28
};
var dario = {
nombre: 'Dario Fernando',
apellido: 'Esparza',
edad: 27
};
function imprimirMayusculas(persona){
var { nombre } = persona;
console.log(nombre.toUpperCase())
}
//Pase por referencia, ya que accede al atributo del objeto y modifica su valor.
function birthday(persona){
persona.edad = persona.edad + 1;
}
function birthday2(edad){
edad += 1;
return edad;
}
//Esta función entra a los atributos de un objeto y lo que hace es crear un nuevo objeto a partir del original
function birthday3(persona){
return {
...persona,
edad: persona.edad + 1,
nombre: 'ivan'
}
}
imprimirMayusculas(ivan) //pase por valor
imprimirMayusculas(dario) //pase por valor
birthday(ivan) //pase por referencia, ya que pasa el objeto.
console.log(ivan.edad)
var OtroIvan = birthday3(ivan) //recordemos que aquí ya tiene 29 años, debido a la funcion birthday
console.log(OtroIvan);
console.log(birthday2(ivan.edad));
delete ivan.apellido; //accedemos por referencia al atributo apellido y se elimina del objeto para siempre.
console.log(ivan)