Lets funzione immaginare come questo:Come rendere la funzione concatenabile in JavaScript?
function foo(x) {
x += '+';
return x;
}
L'utilizzo di come sarebbe stato:
var x, y;
x = 'Notepad';
y = foo(x);
console.log(y); // Prints 'Notepad+'.
Sto cercando un modo per creare la funzione che è chainable con altre funzioni.
Immaginate utilizzo:
var x, y;
x = 'Notepad';
y = x.foo().foo().toUpperCase(); // Prints 'NOTEPAD++'.
console.log(y);
Come faccio a fare questo?
è una buona idea controllare almeno una proprietà sui tipi nativi prima di aggiungerla, ad esempio 'if (! ('Pippo' in String.prototype)) {String.prototype.foo = function() {.. .}} ' – keeganwatkins
Se si desidera estendere un oggetto senza interrompere l'enumerazione, utilizzare il (semi-moderno) [' Object.defineProperty'] (https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/ Object/defineProperty): 'Object.defineProperty (String.prototype, {value: function() {return this +" + ";}})'. Di default il flag 'enumerable' è impostato su' false'. – Phrogz
@keeganwatkins si è :). Presumo che l'OP chiedesse solo delle stringhe come esempio, quindi ho mantenuto gli avvertimenti al minimo, ma questo è un buon punto. –