Flex 4.5 JSON 在异常之前检查密钥是否存在?
在 Flex 4.5 JSON 抛出未找到密钥的异常之前,是否可以检查密钥是否存在?我有一些 json 数据,其中某些键并不总是存在。
我正在使用 CallResponder...
问题是,当您尝试访问 callResponder.lastResponse.key
时 - 并且,比如说,key 并不总是存在于您的 json 中,Flex 将无法解析它。即使您检查 if (callResponder.lastResponse.key)
也会发生这种情况 - 在这种情况下,错误发生在 if 行上
(请参阅 此处为旧错误转储)
下面提供的答案适用于键是 JSON 中顶级节点的情况。然而,它似乎无法解析子键的存在。我没想到顶级节点和子节点的解析之间存在差异,但显然情况就是如此。
为了清楚起见(因为我没有提到我正在尝试在原始问题中解析子键),我在这里创建了一个新问题,专门询问如何使用下面的方法或其他方法解析子键,如果需要的话: Flex 4.5 如何检查JSON子节点key是否存在(使用hasOwnProperty或其他方法)
Is it possible to check for the existence of a key before Flex 4.5 JSON throws an exception for key not found? I have some json data where some keys are not always present.
I am using CallResponder...
The issue is that when you try accessing callResponder.lastResponse.key
- and, say, key is not always present in your json, Flex won't be able to parse it. This happens even if you check if (callResponder.lastResponse.key)
- the error occurs on the if line, in that case
(See old error dump here)
The answer provided below works for cases where the keys are top level nodes in the JSON. However, its seems unable to parse existence for child keys. I had not expected there to be a difference between parsing for top level nodes and child nodes, but apparently that is the case.
For clarity's sake (as I did not mention I am trying to parse for child keys in my original question), I've created a new question here that specifically asks how to parse for child keys, using the method below -- or another method, if need be: Flex 4.5 How do you check for JSON child node key existence (using hasOwnProperty or other methods)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您如何处理 JSON 数据?
在我的记忆中,我使用 JSON.decode(String),并得到一个数组。对于每个对象,您可以使用 obj.hasOwnProperty(key) 来检查它是否存在。
How do you process your JSON data?
In my memory, I use JSON.decode(String), and got an array. For each object, you can use obj.hasOwnProperty(key) to check whether it's present.