Metodo Alias catena in JavaScript?
-
26-09-2019 - |
Domanda
In JavaScript, come hai potuto creare una nuova funzione con lo stesso nome di una funzione esistente, pur preservando la funzione originale in modo che possa essere chiamato dall'interno della nuova?
Soluzione
È possibile passare la funzione originale in una funzione anonima che restituisce una funzione di sostituzione che ha accesso alla funzione originale.
per es.
parseInt = (function parseInt(original) {
return function (x) {
console.log("original would've returned " + original(x));
// just random 'new' functionality
return (x | 0) * 2;
};
}(parseInt));
uscita Esempio:
>> parseInt(10);
<< original would've returned 10
<< 20
Altri suggerimenti
Si desidera implementare funzione di avvolgimento , controllare i seguenti articoli:
Si potrebbe semplicemente assegnare la vecchia funzione a una variabile con un nome diverso:
var old_parseInt = parseInt;
function parseInt(s) {
return old_parseInt(s) + 1;
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow