|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||||
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
Salut tout le monde!
Je suis en train de me pencher sur l'intelligence artificielle en JS. j'aimerais déclarer un array qui contienne dans chaque case une fonction (un comportement pour être exact). J'ai essayé quelque chose comme ça: Code :
Code :
|
||||
|
|
00
|
|
|
#2 | ||
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 032 ![]() |
oui ? et ?
Code :
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
||
|
|
00
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
> La première syntaxe est un tableau de fonctions (enfin, "contenant" des fonctions, car à tout moment il pourrait contenir tout autre type de données)
> La seconde syntaxe un objet dont les fonctions sont les propriétés. (qui peut donc fonctionner à peu près comme un espace de noms) Aucun problème technique avec tout ça, ça marche... >>> Je rejoins donc SF pour poser la question-clef : "et ensuite ?" (au fait juste en passant : un indentation comme ça, je pense que c'est de la dent de requin minimum , voire du T-Rex... encore un peu plus et il faudra un video-projecteur sur un mur de 10 metres pour lire ton code )
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
00
|
|
|
#4 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
autant pour moi, j'ai pas assez détaillé le problème. Ce que je voudrais, c'est lancer un comportement de façon random, et de la manière la plus propre possible (exit donc un switch ou autre, sauf si j'ai vraiment pas le choix).
je voudrais donc pouvoir lire un index aléatoire du tableau pour lancer le comportement correspondant. Si je ne définit ces fonctions que comme méthodes d'un objet, je ne peux pas (enfin je ne pense pas) y accéder via un quelconque index, non? Edit: Ah? Ben chrome me dit le contraire. dans le premier cas il me dit: "Uncaught SyntaxError: Unexpected token :" à propos du ":" de la première fonction, et dans le second, il me dit "Uncaught ReferenceError: alert1 is not defined" |
|
|
00
|
|
|
#5 | ||||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
Il y a d'autres manières de procéder, mais pour ma part j'utilise ce genre de choses :
Code :
Code :
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||||
|
|
00
|
|
|
#6 | |||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
Citation:
Ce n'est qu'un problème de syntaxe : Code :
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|||
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
je réécris mon edit car je pense qu'il est passé inaperçu en fait:
"Edit: Ah? Ben chrome me dit le contraire. dans le premier cas il me dit: "Uncaught SyntaxError: Unexpected token :" à propos du ":" de la première fonction, et dans le second, il me dit "Uncaught ReferenceError: alert1 is not defined"" Sinon, ta fonction est globalement la même que celle que je compte utiliser, mais elle considère que j'ai en effet réussi à faire un array de fonction, non? En tout cas, merci à vous deux pour vos réponses rapides. |
|
|
00
|
|
|
#8 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
Ah! J'ai pas testé encore mais ce serai la solution que ça ne m'étonnerais pas. Donc quand on définit une fonction dans un array, on ne doit pas lui donner de nom? (remarque, en y repensant c'est logique en fait).
Merci bien! j'édit si ça marche. Edit: ça marche!!! Merci bien. Et si jamais quelqu'un tombe via google là dessus, et qu'il ne sait pas comment ensuite accéder à la fonction, c'est |
|
|
00
|
|
|
#9 |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
On est trop rapides comme mecs tous les deux pour utiliser correctement un forum
![]() Remonte ![]() Et arrête d'éditer (comme moi) sinon on va pas s'en sortiiiiiiir
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
00
|
|
|
#10 | ||
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 032 ![]() |
sous chrome mon code au dessus fonctionne sans souci ...
Sinon pour ton random Code :
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
||
|
|
00
|
|
|
#11 |
|
Invité de passage
![]() Inscription : octobre 2010 Messages : 7 ![]() |
(donc j'ai édité une dernière fois en haut pour dire que ça marchait
)Sinon, SF, je ne pensais pas qu'on pouvait accéder à une méthode d'un objet via un index entre crochets. ça me fera une alternative au cas où, mais je pense garder la méthode Array, car ça me donne l'impression de mieux maîtriser l'index. En tout cas, merci à vous deux, une réactivité impressionante!
|
|
|
00
|
|
|
#12 | ||
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
Pour compléter l'exemple que je donnais, on aurait dans la partie head un bout de JS comme ça :
Code javascript :
Code html :
<input type="button" onclick="(t.puiser())();" />
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
||
|
|
00
|
|
|
#13 | ||
![]() ![]() Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Analyste Programmeur Inscription : mars 2002 Messages : 30 032 ![]() |
en intégrant le random à l'array:
Code :
__________________
Ma page Developpez Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts) Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir... Votre post est résolu ? Alors n'oubliez pas le Tag ![]() ![]() réalisations :www.planet-languages.com|www.saftair.com| www.ouestisol.fr | www.sebemex.fr | www.extramiante.fr | www.sistac-alizay.fr | www.acoustishop.fr | www.litt.fr | www.ouestventil.fr |
||
|
|
00
|
|
|
#14 |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
Ah oui tiens c'est pas mal non plus
De plus, en insérant "le random" au prototype d'Array, on a pas besoin de retrimbaler la fonction de random dans chacun des "faux tableaux"... parce que j'imagine qu'il doit y en avoir plus d'un au final... non iraldir ? ![]() iraldir ? ![]() ... (samedi après-midi, il fait super beau, le posteur a eu réponse à son problème, et une heure plus tard on ergote encore pour... pour... le plaisir >>> bon ben maintenant c'est sûr on est des malades
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
00
|
|
|
#15 | |
|
Membre Expert
![]() Tlouye Ci Inscription : mars 2004 Messages : 1 451 ![]() |
Citation:
Une "méthode" ou plutôt propriété d'un objet n'a pas d'index. On peut l'appeller par son nom : ton_objet["nom_propriété"] mais on ne peut pas l'appeller via un quelconque index (ton_objet[1]). D'ailleurs l'objet en question n'a pas de propriété "length" qui permettrait de connaitre le nombre de propriétés déclarées. |
|
|
|
00
|
|
|
#16 | |
|
Expert Confirmé Sénior
![]() Romain VALERIPOOête Inscription : avril 2008 Messages : 2 573 ![]() |
Citation:
Ca peut même être assez traitre : au cas où l'objet soit déclaré avec une fonction constructeur et non un littéral, length existera, mais renverra le nombre d'arguments attendus par la fonction
__________________
...pour les linguistes et les curieux >>> générateur de phrases aléatoires __________________ |
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com