Bonjour à tous,
j'utilise très souvent des fonctions où s'effectue une évaluation directe
d'un bouton dans une fonction par exemple :
function maFonction(bouton){
this[bouton].onRelease=function(){
instruction;
}
}
maFonction("debut_btn");
maFonction("prec_btn");
maFonction("suivant_btn");
maFonction("fin_btn");
Les questions que je me pose sont :
- que représente vraiment le this qui précède mon [ ]
- peut-on ne rien mettre ?
- _root peut convenir parfois...
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Jérôme Courivaud
Bonjour,
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par _root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton"); leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse directement référence à une occurrence de clip sur la scène (_root). eval() évalue la chaine de caractère est voie si sur la scène il y a un clip qui possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object(); // Personne = function(aNom){ this.pNom = aNom; } // // je crée une instance de cette objet : var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom dans l'objet plus haut. Dans ce cas this fait référence à l'objet instancié alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" a écrit dans le message de news:bo5rsq$9pq$
Bonjour à tous, j'utilise très souvent des fonctions où s'effectue une évaluation directe d'un bouton dans une fonction par exemple : function maFonction(bouton){ this[bouton].onRelease=function(){ instruction; } } maFonction("debut_btn"); maFonction("prec_btn"); maFonction("suivant_btn"); maFonction("fin_btn");
Les questions que je me pose sont : - que représente vraiment le this qui précède mon [ ] - peut-on ne rien mettre ? - _root peut convenir parfois...
Bref c'est pas très clair pour moi !
Merci de vos lumières en POO !
Bonjour,
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par
_root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton");
leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse
directement référence à une occurrence de clip sur la scène (_root). eval()
évalue la chaine de caractère est voie si sur la scène il y a un clip qui
possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à
l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object();
//
Personne = function(aNom){
this.pNom = aNom;
}
//
// je crée une instance de cette objet :
var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom dans
l'objet plus haut. Dans ce cas this fait référence à l'objet instancié
alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" <iam.noone@caramail.com> a écrit dans le message de
news:bo5rsq$9pq$1@forums.macromedia.com...
Bonjour à tous,
j'utilise très souvent des fonctions où s'effectue une évaluation directe
d'un bouton dans une fonction par exemple :
function maFonction(bouton){
this[bouton].onRelease=function(){
instruction;
}
}
maFonction("debut_btn");
maFonction("prec_btn");
maFonction("suivant_btn");
maFonction("fin_btn");
Les questions que je me pose sont :
- que représente vraiment le this qui précède mon [ ]
- peut-on ne rien mettre ?
- _root peut convenir parfois...
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par _root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton"); leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse directement référence à une occurrence de clip sur la scène (_root). eval() évalue la chaine de caractère est voie si sur la scène il y a un clip qui possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object(); // Personne = function(aNom){ this.pNom = aNom; } // // je crée une instance de cette objet : var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom dans l'objet plus haut. Dans ce cas this fait référence à l'objet instancié alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" a écrit dans le message de news:bo5rsq$9pq$
Bonjour à tous, j'utilise très souvent des fonctions où s'effectue une évaluation directe d'un bouton dans une fonction par exemple : function maFonction(bouton){ this[bouton].onRelease=function(){ instruction; } } maFonction("debut_btn"); maFonction("prec_btn"); maFonction("suivant_btn"); maFonction("fin_btn");
Les questions que je me pose sont : - que représente vraiment le this qui précède mon [ ] - peut-on ne rien mettre ? - _root peut convenir parfois...
Bref c'est pas très clair pour moi !
Merci de vos lumières en POO !
Iam Noone
Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
"Jérôme Courivaud" a écrit dans le message de news: bo5t0o$brn$
Bonjour,
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par _root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton"); leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse directement référence à une occurrence de clip sur la scène (_root).
eval()
évalue la chaine de caractère est voie si sur la scène il y a un clip qui possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object(); // Personne = function(aNom){ this.pNom = aNom; } // // je crée une instance de cette objet : var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom
dans
l'objet plus haut. Dans ce cas this fait référence à l'objet instancié alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" a écrit dans le message de news:bo5rsq$9pq$ > Bonjour à tous, > j'utilise très souvent des fonctions où s'effectue une évaluation
directe
> d'un bouton dans une fonction par exemple : > function maFonction(bouton){ > this[bouton].onRelease=function(){ > instruction; > } > } > maFonction("debut_btn"); > maFonction("prec_btn"); > maFonction("suivant_btn"); > maFonction("fin_btn"); > > Les questions que je me pose sont : > - que représente vraiment le this qui précède mon [ ] > - peut-on ne rien mettre ? > - _root peut convenir parfois... > > Bref c'est pas très clair pour moi ! > > Merci de vos lumières en POO ! > >
Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
"Jérôme Courivaud" <jeromecourivaud@free.fr> a écrit dans le message de
news: bo5t0o$brn$1@forums.macromedia.com...
Bonjour,
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par
_root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton");
leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse
directement référence à une occurrence de clip sur la scène (_root).
eval()
évalue la chaine de caractère est voie si sur la scène il y a un clip qui
possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à
l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object();
//
Personne = function(aNom){
this.pNom = aNom;
}
//
// je crée une instance de cette objet :
var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom
dans
l'objet plus haut. Dans ce cas this fait référence à l'objet instancié
alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" <iam.noone@caramail.com> a écrit dans le message de
news:bo5rsq$9pq$1@forums.macromedia.com...
> Bonjour à tous,
> j'utilise très souvent des fonctions où s'effectue une évaluation
directe
> d'un bouton dans une fonction par exemple :
> function maFonction(bouton){
> this[bouton].onRelease=function(){
> instruction;
> }
> }
> maFonction("debut_btn");
> maFonction("prec_btn");
> maFonction("suivant_btn");
> maFonction("fin_btn");
>
> Les questions que je me pose sont :
> - que représente vraiment le this qui précède mon [ ]
> - peut-on ne rien mettre ?
> - _root peut convenir parfois...
>
> Bref c'est pas très clair pour moi !
>
> Merci de vos lumières en POO !
>
>
Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
"Jérôme Courivaud" a écrit dans le message de news: bo5t0o$brn$
Bonjour,
Dans ta fonction this ne sert pas à grand chose est peut être remplacé par _root[]. tu peux même ajouter une ligne :
var leBouton = eval("bouton"); leBouton.onRelease = ...
l'idée étant que le texte passé en paramètre à la fonctionne fasse directement référence à une occurrence de clip sur la scène (_root).
eval()
évalue la chaine de caractère est voie si sur la scène il y a un clip qui possède ce nom d'occurrence.
this est plutôt utilsé dans la POO pour faire directement référence à l'objet instancié sur la class :
// création d'un objet avec un paramètre :
var Personne = new Object(); // Personne = function(aNom){ this.pNom = aNom; } // // je crée une instance de cette objet : var alfred = new Personne("Alfred Dechezred");
la valeur passée en paramètre devient la valeur du paramètre this.pNom
dans
l'objet plus haut. Dans ce cas this fait référence à l'objet instancié alfred, soit this = alfred. ce qui fait que l'on peut faire :
trace(alfred.pNom)
il écrit : Alfred Dechezred
voilà
"Iam Noone" a écrit dans le message de news:bo5rsq$9pq$ > Bonjour à tous, > j'utilise très souvent des fonctions où s'effectue une évaluation
directe
> d'un bouton dans une fonction par exemple : > function maFonction(bouton){ > this[bouton].onRelease=function(){ > instruction; > } > } > maFonction("debut_btn"); > maFonction("prec_btn"); > maFonction("suivant_btn"); > maFonction("fin_btn"); > > Les questions que je me pose sont : > - que représente vraiment le this qui précède mon [ ] > - peut-on ne rien mettre ? > - _root peut convenir parfois... > > Bref c'est pas très clair pour moi ! > > Merci de vos lumières en POO ! > >
Iam Noone
Pourquoi le this devant [ ] ne sert pas à grand chose ? Ne faut-il pas indiquer un conteneur ?
Pourquoi le this devant [ ] ne sert pas à grand chose ? Ne faut-il pas
indiquer un conteneur ?
je ne sais pas si le eval est déprécié moi je l'aime bien. Ca permet de synthétiser le code et le rendre plus clair.
je préfère :
var clip = eval("bouton"+i+"_"+j); clip.play();
à
_root["bouton"+i+"_"+j].play;
tout simplement
dans le cas de ta fonction this ne sert à rien parce que justement le contener n'est pas un objet créée mais la scène elle même soit _root[].
"Iam Noone" a écrit dans le message de news:bo60oa$rpp$
Pourquoi le this devant [ ] ne sert pas à grand chose ? Ne faut-il pas indiquer un conteneur ?
zwetan
> Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
non eval() n'est pas déprécié il ne sert pas a remplacer this[...] ou _root[...] c'est un parser de code (pas entièrement implémenté pour ActionScript) cad que eval prends une chaine string et l'evalue en temps reel c'est une fonction a part entière
mais voici un conseil: ne jamais jamais jamais utiliser "eval" il y a toujours une meilleure solution, qui sera plus optimisée, car eval c'est lent, voir meme tres lent
un : this[ referenceString ].otherobject ou un: _root[ referenceString ].otherobject ou meme un referenceObject.otherobject
ce sera au moins 2 a 3 fois plus rapide que faire un eval, le plus rapide étant le dernier
ton code (qui n'a rien mais rien a voir avec de la POO au passage) pourrait s'ecrire comme ca:
pour de l'Orienté Objet ce serait bien plus compliqué que une simple function...
zwetan
>
Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
non eval() n'est pas déprécié
il ne sert pas a remplacer this[...] ou _root[...]
c'est un parser de code (pas entièrement implémenté pour ActionScript)
cad que eval prends une chaine string et l'evalue en temps reel
c'est une fonction a part entière
mais voici un conseil: ne jamais jamais jamais utiliser "eval"
il y a toujours une meilleure solution, qui sera plus optimisée,
car eval c'est lent, voir meme tres lent
un :
this[ referenceString ].otherobject
ou un:
_root[ referenceString ].otherobject
ou meme un
referenceObject.otherobject
ce sera au moins 2 a 3 fois plus rapide que faire un eval,
le plus rapide étant le dernier
ton code (qui n'a rien mais rien a voir avec de la POO au passage)
pourrait s'ecrire comme ca:
> Mais eval ( ) est plutôt dépriécié à l'heure actuelle, non ?
non eval() n'est pas déprécié il ne sert pas a remplacer this[...] ou _root[...] c'est un parser de code (pas entièrement implémenté pour ActionScript) cad que eval prends une chaine string et l'evalue en temps reel c'est une fonction a part entière
mais voici un conseil: ne jamais jamais jamais utiliser "eval" il y a toujours une meilleure solution, qui sera plus optimisée, car eval c'est lent, voir meme tres lent
un : this[ referenceString ].otherobject ou un: _root[ referenceString ].otherobject ou meme un referenceObject.otherobject
ce sera au moins 2 a 3 fois plus rapide que faire un eval, le plus rapide étant le dernier
ton code (qui n'a rien mais rien a voir avec de la POO au passage) pourrait s'ecrire comme ca: