views:

183

answers:

3

Hi,

I did JSON.parse & getting output in javascript variable "temp" in format like this

{"2222":{"MId":106607, "Title":"VIDEOCON Semi Automatic Marine 6.8kg", "Name":"washma01", }}

I tried like

alert(temp[0][0]); alert(temp.2222[0].MId);

but not getting out put.

How will i access this data in java script ?

+2  A: 
alert(temp["2222"].MId);

You can't use numeric indexing, because don't have any actual arrays. You can use dot syntax if the first character of the key is non-numeric. E.g.:

var temp = JSON.parse('{"n2222":{"MId":106607, "Title":"VIDEOCON Semi Automatic Marine 6.8kg", "Name":"washma01", }}');
alert(temp.n2222.MId);
Matthew Flaschen
A: 

You need to access the variable like so temp['2222']['MId'] , That will give you the value of MId. Even though I have shown using the [] method of getting the value , the answers below work as well.

You can run this test below in firebug.

var ss = {"2222":{"MId":106607, "Title":"VIDEOCON Semi Automatic Marine 6.8kg", "Name":"washma01"}};
console.log(ss['2222']['MId']);
RC1140
+1  A: 

Try this:

temp["2222"].MId

Typically temp.bar and temp["bar"] are equivalent JavaScript statements, but in this case one of your property name starts with a number. When this happens you are forced to use the index (aka bracket) notation.

Xavi