开发者

How to get a JSON value from a variable

开发者 https://www.devze.com 2023-03-05 08:19 出处:网络
suppose I have {\"data\": {\"243232\": {\"id\": \"testid\",\"name\": \"test\" } }} so when I do vara = data.243232.id;

suppose I have {"data": {"243232": {"id": "testid","name": "test" } }}

so when I do

var a = data.243232.id; alert(a); // it gives me testid.

but when I do like

    var c = 243232; 
    var d = data.c.id;
    alert(d) //it gives as undefined.

so how to get corr开发者_StackOverflowect value when i alert d in above case thanks.


Use the other notation var a = data['243232'].id

Remember all objects in JS are really just associative arrays.

Object keys just a variable in js and thus require proper naming

the variable naming rules are.

  • The first character must be a letter (either uppercase or lowercase) or an underscore (_), or a dollar sign ($).
  • Subsequent characters can be letters, numbers, underscores, or dollar signs in JavaScript Variables.
  • The JavaScript Variable name can't be a reserved word of JavaScript, see details of JavaScript Reserved Characters

JSON normally uses an eval() function to turn the string into a data-structure. This allows for incorrect keys. If you want to reference an improper key, you need to use the associative array method.

As for you addition

var c = 243232; 
var d = data[c].id;
alert(d) //it gives as undefined.

Will work


Use data[c].id.

In JavaScript, .prop is syntactic sugar for ["prop"]. The bracket notation allows you to use values which would be invalid when using . (such as background-image) and variables.

0

精彩评论

暂无评论...
验证码 换一张
取 消