我是我在JavaScript中使用JSON和我试图得到该点符号代表一个字符串值。
例如AAA.BBB[0].CCC.DDD[5].EEE
= 123在JSON点标记的格式。
但我想要得到的值AAA.BBB[0].CCC.DDD[5].EEE
为字符串,所以我可以将其保存以备后用,让我直接修改我的JSON代码。
有没有在Javascript或jQuery的方法,该方法可以返回一个字符串值表示?
*编辑我转换JSON数据到一个列表结构,我想保存AAA.BBB[0].CCC.DDD[5].EEE
格式作为id所以当用户修改其修改该列表项的内容直接JSON数据。 会不会有更好的方法来保存ID中的位置?
为什么不只是存储到它的内部部分的参考? 把它作为一个字符串,并没有太大的意义。 如果你只是想访问它的一个较短的方式,存储参考更有意义。
var theCollection = AAA.BBB[0].CCC.DDD[5];
alert( theCollection.EEE );
然后该参考可被存储在元素上和稍后检索。
$(someelement).data("jsonref",theCollection);
var data = $(someelement).data("jsonref");
alert(data.EEE);
data.EEE = "foobar";
data = $(someelement).data("jsonref");
alert( data.EEE );
var j_string = JSON.stringify(AAA.BBB[0].CCC.DDD[5].EEE);
如果你只是想返回的值是一个字符串,这样做:
var j_string_value = AAA.BBB[0].CCC.DDD[5].EEE.toString();
你很可能使用eval
对字符串,如果你正在寻找这条道路上执行的操作,但eval
是相当危险的,因为它允许执行任意代码。 如果你想JSON字符串化的整个结构,有JSON.stringify这是大多数新的浏览器的标准功能和Doug Crockford的有他自己对此采取旧的浏览器在这里 。