作者:大海2502902497 | 来源:互联网 | 2023-02-11 14:45
我的Web应用程序中有一个简单的表单,它将JSON对象持久保存到Firebase数据库.并非此表单上的每个字段都是必需的,因此在构造发送的对象时,它可能具有多个undefined
属性.
由于Firebase在尝试持久化undefined
值时会抛出错误(更不用说,你不应该undefined
在JSON对象上有一个值),我想知道框架是否提供了任何方法来覆盖所有未定义的值,null
甚至是空字符串; 我还没有在网上找到解决方案.
最糟糕的情况我可以null
手动设置所有未定义的属性,但我宁愿不这样做
对此有何想法或建议?
非常感谢!
1> Kurai Bankus..:
我的解决方案是简单地stringify()
将对象与a组合replacer
以替换所有未定义的值
obj = JSON.parse(JSON.stringify(obj, function(k, v) {
if (v === undefined) { return null; } return v;
}));
然后我将它转换回JSON对象 parse()