Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > it.comp.lang.javascript > #7978
| From | Alessandro Pellizzari <shuriken@amiran.it> |
|---|---|
| Newsgroups | it.comp.lang.javascript |
| Subject | Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() |
| Date | 2016-01-24 14:14 +0000 |
| Message-ID | <dgk4haFb88lU2@mid.individual.net> (permalink) |
| References | <12069110-6044-4930-9e22-4304304ea799@googlegroups.com> <dgjb1pF5cgoU1@mid.individual.net> <3855b4c6-80be-4975-a9a2-e38e2fae4cc5@googlegroups.com> <dgk25sFb88lU1@mid.individual.net> <752d8b83-5456-41af-b8ed-4fd7043cd51b@googlegroups.com> |
Il Sun, 24 Jan 2016 05:48:21 -0800, albaserver ha scritto:
> Il giorno domenica 24 gennaio 2016 14:33:50 UTC+1, Alessandro Pellizzari
> ha scritto:
>> jQuery ritorna quasi sempre un "oggetto jQuery" che wrappa altre cose,
>> tipicamente un array di elementi del DOM.
>
> n.fn.init[3]
>
> un array init dell'oggetto fn, proprietà dell'oggetto n. Al quale sono
> associate tutte le proprietà tipiche di jQuery che contengono delle
> funzioni per operarci (css, animate ecc.).
>
> Ma nel source code di jQuery non ho capito come creano questo oggetto.
Qualcosa del genere:
var MyString = function(val) {
this.val = val;
}
MyString.prototype.append = function(v2) {
return new MyString(this.v + v2);
}
In questo modo wrappi sempre il risultato nell'oggetto stesso, e puoi fare
var pippo = (new MyString('p')).append('ip').append('po');
console.log(pippo.val);
(Codice non testato. "Fai come dico, non come faccio" :) )
Poi jQuery usa un trucchetto banale per evitare il new, qualcosa tipo
var MyString = function(val) {
if (this == document) {
return new MyString(val);
} else {
this.val = val;
}
}
Per cui puoi fare
var pippo = MyString('p').append('ip').append('po');
(vedi disclaimer sopra)
Bye.
Back to it.comp.lang.javascript | Previous | Next — Previous in thread | Next in thread | Find similar
oggetto.nomeFunzione("stringa").operaSullaFunzione() alcaseltzer <albaserver@gmail.com> - 2016-01-23 13:17 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() Alessandro Pellizzari <shuriken@amiran.it> - 2016-01-24 06:59 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 02:06 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 02:26 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() Alessandro Pellizzari <shuriken@amiran.it> - 2016-01-24 13:33 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 05:48 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() Alessandro Pellizzari <shuriken@amiran.it> - 2016-01-24 14:14 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 06:28 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() 4ndre4 <4ndre4@4ndre4.com.invalid> - 2016-01-24 14:52 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() Alessandro Pellizzari <shuriken@amiran.it> - 2016-01-24 15:50 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 10:45 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() 4ndre4 <4ndre4@4ndre4.com.invalid> - 2016-01-24 19:08 +0000
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() albaserver@gmail.com - 2016-01-24 12:33 -0800
Re: oggetto.nomeFunzione("stringa").operaSullaFunzione() 4ndre4 <4ndre4@4ndre4.com.invalid> - 2016-01-24 13:56 +0000
csiph-web