Angular 7检查JSON解析是不是返回特定对象的正确方法[关闭]

Posted

技术标签:

【中文标题】Angular 7检查JSON解析是不是返回特定对象的正确方法[关闭]【英文标题】:Angular 7 correct way to check if JSON parse returns a specific object [closed]Angular 7检查JSON解析是否返回特定对象的正确方法[关闭] 【发布时间】:2019-12-02 19:24:51 【问题描述】:

我对此有点困惑。 我有一个服务器返回一个 JSON 字符串,该字符串表示我定义的一组自定义对象。我需要执行一些测试并检查该数组的每个元素是否可以正确地转换/解析为我的对象。 这样做的正确方法是什么? 我考虑过创建一个新对象并将我的JSON.parse(element) 结果传递给构造函数,但是如何检查它是否正确创建?它会抛出异常吗?

【问题讨论】:

【参考方案1】:

这是检查它的简单方法:

checkJsonObject(string) 
    try 
        JSON.parse(string);
     catch (e) 
        return false;
    
    return true;

【讨论】:

但是如何检查解析是否返回特定类型的对象,在这种情况下是我的自定义对象?这仅检查传递的字符串是否是正确的 json 字符串... 可以使用javascripttypeof操作符。可能会有所帮助。例如,如果 var a 包含 JSON 对象。然后你可以在条件语句中写成if(typeof a == 'object')。这些将返回 true 或 false 值。 是的 typeof 它告诉我它是一个对象,而不是一个特定的自定义对象

以上是关于Angular 7检查JSON解析是不是返回特定对象的正确方法[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

如何检查数据是不是已完成加载以使用异步管道 Angular 8

Angular 2 - 将 JSON 解析为具有计算属性的类

如何根据使用角度 7 中的键的条件检查来过滤 json 响应中的数组

带有 json-server 的 Angular 7 - 如何检索发布响应中返回的 id?

如何在 Python 中检查字符串是不是是有效的 JSON?

Angular 2+ - 检查 Pipe 是不是返回原始列表的空子集