Je suis relativement nouveau pour javascript. J'utilise le SDK titanium d'appcelerator pour créer une application mobile, et il utilise uniquement javascript.Utilisation d'une chaîne pour cibler un objet
De toute façon, j'ai un système de menu hiérarchique que je crée. J'ai des tableaux de données remplis d'éléments de sous-menu. Chaque tableau de données est rempli avec un sous-menu différent. Lorsque je clique sur un élément de menu, il reçoit une variable qui permet à l'application de connaître le tableau de données à charger ensuite. Voici un exemple de base:
var data = [
{title:'Item 1',subID:'1', hasDetail:true,},
{title:'Item 2',subID:'1', hasDetail:true,}
];
var data1 = [
{title:'Child1',subID:'1_1', hasDetail:true},
{title:'Child2', subID:'1_2', hasDetail: true}
];
var data1_1 = [
{title:'Grandchild1'},
{title:'Grandchild2'}
];
// I have a ton of menu items though, so the method I'm using
// below is very inefficient:
if(win.subID == '1'){
tableview.setData(data1);
} else if(win.subID == '2'){
tableview.setData(data2);
}
Il y a beaucoup d'autres menus (1,2,3,4, etc et 1_1,1_2,1_3,2_1,2_2, etc.), la méthode ci-dessus de régler les données est extrêmement inefficace. Ce que je voudrais donc quelque chose comme ceci:
tableview.setData(data + win.subID);
Cependant, je sais que les données sont un objet de tableau et subid est une chaîne. Comment puis-je combiner le nom d'un objet avec une chaîne, puis le convertir pour se référer à un objet à nouveau?
Merci, et s'il vous plaît laissez-moi savoir si quelque chose ci-dessus n'était pas clair. J'ai lutté avec ça pendant très longtemps.
EDIT:
Voici ce que j'ai besoin en d'autres termes de:
J'ai une chaîne, que je veux utiliser pour référencer un tableau. Ce dont j'ai besoin est cette chaîne magique à la fonction tableau/objet.
ce n'est pas clair ... –
Comment puis-je le rendre plus clair? – Connor