我有这个对象:{ name: "", email: "", phone: "", protocol: "", area: "", subject: "", message: "", validation: this.validator.valid()}我想将其转换为JSON,但是我不想要该validation属性。我已经尝试了以下方法:const test = JSON.stringify(this.state);delete test.validation;还有其他方法吗?
3 回答
暮色呼如
TA贡献1853条经验 获得超9个赞
JSON.stringify
需要一个可以使用的替换回调。replacer函数使用一个键k
,并将值v
字符串化为参数。返回undefined将具有不将键包含在最终结果中的效果:
state = {
name: "",
email: "",
phone: "",
protocol: "",
area: "",
subject: "",
message: "",
validation: "some val"
}
const test = JSON.stringify(state, (k, v) => k != 'validation' ? v : undefined);
console.log(test)
注意:像这样使用它也会validation
从任何子对象中删除密钥,这可能是您想要的,也可能不是。
添加回答
举报
0/150
提交
取消