如题,对于一个多层嵌套的对象。例如
var o = {
a:1,
b:{b_a:''},
c:{c_a:1,c_b:''}
}
通过处理,希望得到
{
a:1,
c:{c_a:1}
}
尝试过这个方法(stackOverflow):
function removeEmpty(obj) {
Object.keys(obj).forEach(function(key) {
(obj[key] && typeof obj[key] === 'object') && removeEmpty(obj[key]) ||
(obj[key] === undefined || obj[key] === null) && delete obj[key]
});
return obj;
};
没有成功.求一个删除空value''
和空对象{}
的属性方法,蟹蟹。
试试下面代码,没用函式库,直接作两次递回,第一次去空字串,第二次是去空对象,没细测过大量资料时的效能,但可得出你要的结果。再深层一些可再试试:
参考自: http://stackoverflow.com/ques...
http://stackoverflow.com/ques...
有借鉴一楼