我正在编写一个测试代码来比较json值。 目前,它正在使用JSONAssert将我的json值与api响应进行比较并正常工作。
但我认为响应json可能会被更改以支持更多功能。 然后JSONAssert报告失败,因为有额外的字段是不期望的。
所以我想在使用JSONAssert之前创建一个逻辑来删除一些添加的元素。
有没有简单的方法从json中删除所需的字段?
示例) 目前: { “field1”:“AAAA”, “field2”:“BBBB” } 下一个 : { “field1”:“AAAA”, “field3”:“CCC”, “field2”:“BBBB” }
我想在使用它之前从json中删除“field3”。
答案 0 :(得分:0)
我假设您已将JSON源字符串解析为JavaScript对象结构。那么你可以做到以下几点:
// option 1
delete Next["field3"];
// option 2
delete Next.field3;
在大多数情况下,第一个选项应该是更好的选项,因为它允许您动态生成属性名称。
如果现在您的JSON数据可能包含其他值,那么您的测试可能会被更改,或者您需要进行其他测试。在单元测试的情况下(我假设你想在这里做)你应该在一次测试中只测试一个特定的东西。对于其他任何事情,你应该写其他测试。