English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
Il metodo apply() chiama una funzione utilizzando il valore this fornito e fornisce i parametri sotto forma di array (o oggetti simili a array).
let numbers = [5, 6, 2, 3, 7]; let max = Math.max.apply(null, numbers); document.write(max);Prova a vedere‹/›
Il metodo call() accetta parametri singolarmente.
Il metodo apply() considera i parametri comeArray.
Se devi utilizzare un array invece di una lista di parametri, il metodo apply() è molto comodo.
Utilizzando astutamente, apply() puoi applicare funzioni predefinite a determinate attività, altrimenti potresti dover scriverle passando manualmente i valori dell'array.
Come esempio, utilizzeremo Math.max / Math.min per trovare il valore massimo / minimo nell'array.
let numbers = [5, 6, 2, 3, 7]; let max = Math.max.apply(null, numbers); let min = Math.min.apply(null, numbers); for(let i = 0; i < numbers.length; i++) { if(numbers[i] > max) { max = numbers[i]; } if(numbers[i] < min) { min = numbers[i]; } } document.write(min, "<br>", max);Prova a vedere‹/›
Negli esempi seguenti, abbiamo chiamato la funzione display senza passare parametri:
var name = "Seagull"; function display() { document.write(this.name); } display.apply();Prova a vedere‹/›