我有以下代码:JavaScript字符串赋值给键值字符串
var inputString ={"Key1":"Planes","Key2":"Trains","Key3":"Cars","Key4":"Caoch","Key5":"Cycles","Key6":"Bikes"}
var value = inputString ["Key3"];
alert(value);
上面的代码工作正常,请注意变量inputString是大括号之间布置的作业。我是一个js新手,但我认为这是一个表示某种对象的约定。这种字符串分配对我来说看起来很奇怪,但它的工作原理如上所述。
我的问题是,当我尝试分配变量inputString
到字符串中,如下所示:
var inputString2 ='{"Key1":"Planes","Key2":"Trains","Key3":"Cars","Key4":"Caoch","Key5":"Cycles","Key6":"Bikes"}'
var value = inputString2 ["Key3"];
alert(value);
上面的代码返回undefined
,为什么呢?
我敢肯定,对JavaScript有深刻理解的人可以向我解释这一点。
谢谢
你为什么要使用对象方法用绳子? – 2013-05-09 15:52:44
你需要在该字符串上使用'eval' .... j/k(不这样做)查看json.js http://www.json.org/js.html – 2013-05-09 15:54:03
这个“某种对象“实际上称为['object literal'](https://developer.mozilla.org/en/docs/JavaScript/Guide/Values,_variables,_and_literals#Object_literals),第二个仅仅是一个”字符串文字“最有可能的字符串转储的[JSON](http://www.json.org/)对象 – Aprillion 2013-05-09 16:01:21