正确验证TypeScript中的JSON.parsed数据

时间:2017-08-08 22:38:05

标签: angular typescript if-statement conditional-statements javascript-objects

我为角度创建了一个小模块,并且我遇到了条件,如果他们正确检查我的JSON.parsed数据。

read(): Position|null {
    try {
        ...
        let parsedData  = JSON.parse(data);
        if (parsedData && parsedData.x && parsedData.y)
            return new Position(parsedData.x, parsedData.y);
    } catch (e) {
        ...
    }
    return null;
}

对我而言似乎不是一个很好的解决方案,就好像我之前已经对其进行过字符串化的对象有更多属性,然后我需要检查它们中的每一个。我还不确定解析数据为null时会发生什么。是否有其他解决方案来检查标准数据?感谢

1 个答案:

答案 0 :(得分:0)

正如评论中所讨论的,你想要的是:

read(): Position|null {
    try {
        return JSON.parse(data) as Position;
    } catch (e) {
        return null;
    }
}