2012-03-21 17 views
1

私はノードjsでnode-mysqlモジュールを試しています。私は何をしたい、このようなオブジェクトを思い付くことができるようにされています変数はJavaScriptの文字列として扱われます

var boom = results; 
    var rooms = []; 
    var index = 0; 
    var name = 'session'; 
    for(var b in boom){ 
     var ses = name + index; 
     rooms[b] = {ses : boom[b]['ses_title']}; 
     index++; 
    } 

SES変数は上記のコードでは、文字列として扱われている。ここでは、コードです

{'room1':'Room 1','room2':'Room 2','room3':'Room 3'} 

。あなたが好きなものを使用する必要があります

[{ses : 'class session'} , {ses : 'team session'}] 
+0

そして質問は? – Starx

答えて

2

このようなキー名を割り当てることはできません。 bracket notationを使用してください:それは動作するはずです:

var boom = results; 
var rooms = []; 
var index = 0; 
var name = 'session'; 
for(var b in boom){ 
rooms[b] = {}; 
rooms[b][name + index] = boom[b]['ses_title']}; 
index += 1; 
} 
2

:そして、私はこのようなもので終わる

rooms[b] = {}; 
rooms[b][ses] = boom[b]['ses_title']; 

オブジェクトリテラルのキーは常に、文字通りに解釈して評価されていないためです。

関連する問題