2012-09-06 4 views
0

Je crois que ce que j'essaie de faire est de déclarer plusieurs tableaux dans un tableau. Dans un document texte, je donne les résultats suivants:Tableau dans un tableau

"一","いち","one" 
"二","に","two" 
"三","さん","three" 
"四","し・よん","four" 
"五","ご","five" 

Ce que je veux placer automatiquement dans un tableau avec les éléments assignés en tant que groupes de 3, donc par exemple set_one [0] [1] serait « い ち", set_one [3] [2] serait" quatre ", etc.

Pour la vie de moi, je ne peux pas comprendre comment lire même les valeurs ligne par ligne à partir du document en texte brut, encore moins essayer de les assigner automatiquement en tableaux .. donc j'ai essayé manuellement. J'ai:

var set_one = new Array(new Array("一", "いち","one"), new Array("二", "に","two", new Array("三", "さん","three", new Array("四", "よん・し","four", new Array("五", "ご","five"); 

Qui, lorsque document.write (set_one [3] [2]); est appelé, rien ne se passe comme avant ... J'ai même essayé une boucle for pour voir si quelque chose existe dans le tableau (set_one), bien que pour autant que je sache, rien ne se passe.

Il est difficile de travailler sur cette machine Windows pour le moins, car je n'ai pas d'outils de débogage disponibles, et elle n'a pas de connexion Internet active! Qu'est-ce que je fais mal? Existe-t-il une meilleure façon de le faire? Est-il même possible de lire automatiquement les valeurs dans un tableau ligne par ligne, puis d'affecter les valeurs à des tableaux individuels en fonction des valeurs de virgule?

+0

A quel stade de votre exécution JavaScript appelez-vous 'document.write()'? Pendant l'analyse et l'exécution de la phase? – alex

+3

Il ne se passe probablement rien du fait que vous avez plusieurs parenthèses fermées ...?! – deceze

+0

Jusqu'à présent, tout mon script est juste la définition de la variable, puis la fonction document.write(). – Jamus

Répondre

3

Vous ne créez pas le tableau correctement. Par exemple, lorsque vous avez:

new Array("二", "に","two", new Array("三", "さん","three")) 

Vous créez en fait un tableau à un seul élément, dans lequel la position est se un autre tableau. Soit utiliser:

new Array (new Array("二", "に","two"), new Array("三", "さん","three")) 

Ou le plus simple, et moins de manière confuse de créer des tableaux en JavaScript:

var set_one = [ 
    [ "一","いち","one" ], 
    [ "二","に","two" ], 
    [ "三","さん","three" ], 
    [ "四","し・よん","four" ], 
    [ "五","ご","five" ] 
]; 
set_one[0][1]; // いち 
0
var set_one = [ 
["一","いち","one"], 
["二","に","two"], 
["三","さん","three"], 
["四","し・よん","four"], 
["五","ご","five"] 
];