Llamada de función Apply de JavaScript
- Página anterior Llamar función JS
- Página siguiente Enlazar funciones JS
método reciclaje
A través de apply()
Método, puede escribir métodos para diferentes objetos.
método apply() de JavaScript
apply()
Método con call()
Los métodos son muy similares:
En este ejemplo,person
del fullName
El métodoaplicara person1
:
Ejemplo
var person = { fullName: function() { return this.firstName + " " + this.lastName; } } var person1 = { firstName: "Bill", lastName: "Gates", } person.fullName.apply(person1); // Devolverá "Bill Gates"
Diferencia entre call() y apply()
La diferencia es:
call()
Método que acepta parámetros individualmente.
apply()
Método que acepta parámetros en forma de array.
Si se desea usar un array en lugar de una lista de parámetros, apply()
Muy conveniente.
Método apply() con parámetros
apply()
Método que acepta parámetros en forma de array:
Ejemplo
var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; } } var person1 = { firstName:\"Bill\", lastName: "Gates" } person.fullName.apply(person1, ["Oslo", "Norway"]);
y call()
Método comparativo:
Ejemplo
var person = { fullName: function(city, country) { return this.firstName + " " + this.lastName + "," + city + "," + country; } } var person1 = { firstName:\"Bill\", lastName: "Gates" } person.fullName.call(person1, "Oslo", "Norway");
simular el método max en un array
Puedes usar Math.max()
Método encuentra el número más grande (de una lista de números):
Ejemplo
Math.max(1,2,3); // regresará 3
Dado que los arrays de JavaScript no tienen un método max(), puedes aplicar Math.max()
Método
Ejemplo
Math.max.apply(null, [1,2,3]); // también regresará 3
El primer parámetro (null) no importa. No se utiliza en este ejemplo.
Estos ejemplos darán el mismo resultado:
Ejemplo
Math.max.apply(Math, [1,2,3]); // también regresará 3
Ejemplo
Math.max.apply(" ", [1,2,3]); // también regresará 3
Ejemplo
Math.max.apply(0, [1,2,3]); // también regresará 3
Modo estricto de JavaScript
En el modo estricto de JavaScript, si apply()
Si el primer parámetro no es un objeto, se convertirá en el propietario de la función llamada (objeto). En el modo 'no estricto', se convertirá en el objeto global.
- Página anterior Llamar función JS
- Página siguiente Enlazar funciones JS