English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Corso di base JavaScript

Oggetti JavaScript

Funzioni JavaScript

JS HTML DOM

BOM del browser JS

Corso di base AJAX

Manuale di riferimento JavaScript

Applicazione di funzione JavaScript

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‹/›

Differenze tra call() e apply()

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.

Utilizzo di apply() e funzioni predefinite

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‹/›

Chiamata della funzione con apply() senza specificare i parametri

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‹/›