我有以下JavaScript对象
myObject = {
Fname: 'A',
Mname: null,
Lname: 'C',
Email: 'AB@gmail.com',
Address: null,
Login: 'AB',
Active: null
};
我希望将字段设置为默认值null
,因此我的结果对象应该是这样。
Object {
Fname: "A",
Mname: "",
Lname: "C",
Email: "AB@gmail.com",
Address: "",
Login: 'AB',
Active: ""
}
有没有快速的方法可以做到这一点,因为在我的情况下,大约有80到100个对象字段。并且需要花费太多时间逐一检查字段
答案 0 :(得分:3)
您可以使用Object.keys
和forEach
,如下所示。
myObject = {
Fname: 'A',
Mname: null,
Lname: 'C',
Email: 'AB@gmail.com',
Address: null,
Login: 'AB',
Active: null
};
// Get array of keys of the object
// Loop over it
Object.keys(myObject).forEach(function(e) {
// If value of the object member is `null` set it to `''` - empty string.
if (myObject[e] === null)
myObject[e] = '';
});
console.log(myObject);
document.write('<pre>' + JSON.stringify(myObject, 0, 2) + '</pre>');
您还可以将regex
与JSON.parse
和JSON.stringify
myObject = JSON.parse(JSON.stringify(myObject).replace(/:null/g, ':""'));
var myObject = {
Fname: 'A',
Mname: null,
Lname: 'C',
Email: 'AB@gmail.com',
Address: null,
Login: 'AB',
Active: null
};
myObject = JSON.parse(JSON.stringify(myObject).replace(/:null/g, ':""'));
console.log(myObject);
document.write('<pre>' + JSON.stringify(myObject, 0, 2) + '</pre>');