如何用-在jQuery中使用单行替换null
例如
var obj={
"Key1":null,
"key2":"I have null",
"key3":null
}
预期产量:
var obj={
"Key1":"-",
"key2":"I have null",
"key3":"-"
}
解决方法:
您可以使用Object.keys
并检查该值.带有递归函数并在迭代对象上具有闭包.
var iter = o => k => o[k] && typeof o[k] === 'object' && Object.keys(o[k]).forEach(iter(o[k])) || o[k] === null && (o[k] = '-'),
object = { Key1: null, key2: "I have null", key3: { kje: "test", dfasfd: null, demo: "null demo" } };
Object.keys(object).forEach(iter(object));
console.log(object);
基本上可以用ES5解决
var object = { Key1: null, key2: "I have null", key3: { kje: "test", dfasfd: null, demo: "null demo" } };
Object.keys(object).forEach(function iter(o) {
return function (k) {
if (o[k] && typeof o[k] === 'object') {
Object.keys(o[k]).forEach(iter(o[k]));
return;
}
o[k] === null && (o[k] = '-');
};
}(object));
console.log(object);