-
Notifications
You must be signed in to change notification settings - Fork 0
/
021_metodoCall.js
45 lines (36 loc) · 1.09 KB
/
021_metodoCall.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
//Es para LLAMAR metodos que se encuentran en unos objetos desde otros objetos
let persona1 = {
nombre: 'Juan',
apellido: 'Perez',
nombreCompleto: function(){
return this.nombre + ' ' + this.apellido;
}
}
let persona2 = {
nombre: 'Carlos',
apellido: 'lara',
}
//uso de call
console.log(persona1.nombreCompleto());
console.log(persona1.nombreCompleto.call(persona2));
//PASO DE ARGUMENTOS A CALL
let persona3 = {
nombre: 'cristiano',
apellido: 'ronaldo',
nombreCompleto: function(titulo, tel){
return titulo + ': ' + this.nombre + ' ' + this.apellido + ' ' + tel;
}
}
console.log(persona3.nombreCompleto.call(persona2, 'ingeniero', '98754321'));
console.log(persona3.nombreCompleto.call(persona1, 'lic', '123458'));
//METODO APPLY EN JAVASCRIPT
let persona4 = {
nombre: 'Juan',
apellido: 'Perez',
nombreCompleto: function(){
return this.nombre + ' ' + this.apellido;
}
}
//la diferencia es que se pasa un arreglo con los argumentos
let arreglo = ['Inge', '55789'];
console.log(persona3.nombreCompleto.apply(persona3, arreglo));