gpt4 book ai didi

Javascript 字符串赋值给键值字符串

转载 作者:行者123 更新时间:2023-11-28 13:43:07 24 4
gpt4 key购买 nike

我有以下代码:

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 有深入了解的人可以向我解释这一点。

谢谢

最佳答案

那是因为它不是对象,它只是一个字符串。

var inputString2 ='{"Key1":"Planes","Key2":"Trains","Key3":"Cars","Key4":"Caoch","Key5":"Cycles","Key6":"Bikes"}'

您需要删除 json 周围的引号。应该是这样的。

 var inputString2 ={"Key1":"Planes","Key2":"Trains","Key3":"Cars","Key4":"Caoch","Key5":"Cycles","Key6":"Bikes"}

如果你将它作为字符串获取。使用 JSON.parse

 var convertedJson =  JSON.parse(inputString2);
var value = convertedJson ["Key3"];
alert(value);

See JSON.parse

关于Javascript 字符串赋值给键值字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16465844/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com