我正在编写一个测试代码来比较json值。目前,它正在使用JSONAssert将我的json值与api响应进行比较,并进行良好的工作。
但我认为响应json可能会被修改,以支持更多的功能。然后JSONAssert可能会报告失败,因为有额外的字段是不被期望的。
因此,我想在使用JSONAssert之前建立一个逻辑来删除一些添加的元素。
有什么简单的方法从json中删除想要的字段吗?
当前:{ "field1":"AAAA","field2":"BBBB“}下一步:{ "field1":"AAAA","field3":"CCC”, "field2":"BBBB“}
在使用json之前,我想删除json中的"field3“。
发布于 2013-03-13 21:28:17
首先回答你的问题
我假设您已经将JSON源字符串解析为JavaScript对象结构。因此,您可以执行以下操作:
// option 1
delete Next["field3"];
// option 2
delete Next.field3;在大多数情况下,第一个选项应该更好,因为它允许您动态生成属性名。
另一方面,
如果您现在的JSON数据可能包含其他值,那么您的测试可能会被更改,或者您需要另一个测试。在单元测试的情况下(我假设您在这里要做的事情),您应该在一个测试中只测试一个特定的东西。对于其他任何事情,您都应该编写额外的测试。
https://stackoverflow.com/questions/15396517
复制相似问题