gpt4 book ai didi

Javascript JSON 解析错误

转载 作者:行者123 更新时间:2023-12-03 07:42:44 24 4
gpt4 key购买 nike

当我尝试解析 JSON 数组的字符串表示形式时,遇到一个非常奇怪的错误。

这是字符串:

[{"name":"param1","type":"text","label":"Param1","value":"Wowzers"},{"name":"param2","type":"text","label":"Param2","value":"Awesomesauce"}]

JSON 似乎没有错误或格式错误,但由于某种原因,当我在该字符串上调用 JSON.parse() 时。两个“值”属性都设置为“未定义”。

关于这一切的最奇怪的部分是,在另一个实例中,JSON 解析工作正常。这是另一个实例的字符串。

[{"name":"start","type":"date","label":"Start Date","value":"2016-02-11T05:00:00.000Z","format":"EEEE, MMMM dd yyyy, h:mm a"},{"name":"finish","type":"date","label":"End Date","value":"2016-02-13T05:00:00.000Z","format":"EEEE, MMMM dd yyyy, h:mm a"}]

使用此代码,我可以访问这些值,并且返回的对象数组具有等于正确值的值属性。所以它解析正确。

因此,对于第一个字符串,值返回为未定义,但是当我尝试使用下面的代码访问该值时,它起作用了。我可以记录这些值,即使它们在技术上并不存在于数组中。

    for (var i = 0; i < $scope.templateParams.length; i++) {
var msg = $scope.templateParams[i];
$log.info(msg);
$log.info(msg.value);
}

这给出:

Object { name: "param1", type: "text", label: "Param1", value: "Wowzers" }
Wowzers
Object { name: "param2", type: "text", label: "Param2", value: "Awesomesauce" }
Awesomesauce

我对此真的很茫然,并尝试了多种解决方法,但无法弄清楚任何事情。将不胜感激任何帮助。

更新:

Here is the console output. On the right I have one of the objects from the parsed array selected. As you can see the value is undefined, but for some reason I can still access in some parts of my code.

最佳答案

我明白了。对于我的项目,可以根据每个参数的“类型”显示两种类型的字段,并且它们都绑定(bind)到相同的 ng-model。

即使解析可以工作,“value”属性也会被其他输入字段设置为未定义。

感谢大家的帮助,很抱歉我没有尽我所能进行描述。我不完全明白发生了什么以及如何解释。

关于Javascript JSON 解析错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35343110/

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