0

I have a json object in the below format and am trying to retrive the grade for the key "krishna kk" which gives me an Uncaught SyntaxError: Unexpected token [ error. can any one help to understand how to get the inner object data where the key name has spaces in it.

[
    {"studentinfo": [
            {
               "rama nathan": {
                    "grade": "1",
                    "roleno": "9",
                    "score": 9
                }
            },
            {
                "krishna kk": {
                    "grade": "3",
                    "roleno": "9",
                    "score": 4
                }
            },
            {
                "john Doe": {
                   "grade": "2",
                    "roleno": "5",
                    "score": 7
                }
            }
        ],
    }
]

My code as below :

var stugrade = studentobject["0"].studentinfo["0"].[rama nathan].grade;
Felix Kling
  • 795,719
  • 175
  • 1,089
  • 1,143
krish
  • 469
  • 1
  • 15
  • 34

2 Answers2

1

You can execute it like this

var stugrade = studentobject[0].studentinfo[0]['rama nathan']['grade'];
henrybbosa
  • 1,139
  • 13
  • 28
  • To avoid type casts, it is better to specify a numeric value: var stugrade = studentobject[0].studentinfo[0]['rama nathan']['grade']; – drch Jul 21 '17 at 19:56
  • any help how to get the Student name also.? (i.e. i want to fetch "rama nathan") to out put into html. – krish Jul 22 '17 at 21:13
0

Change [rama nathan] to ["rama nathan"]. It's the way to call a JavaScript object property. Use it like this:

 var stugrade = studentobject["0"].studentinfo["0"]["rama nathan"].grade;
Rahul Beniwal
  • 639
  • 4
  • 9