您好,我目前遇到这样的问题:如果其中的所有值为null或0,则检查具有另一个嵌套对象的对象
我的对象如下:
{
"city":0,
"road":{
"max":null,
"min":null
},
"size":{
"max":null,
"min":null
},
"type":null,
"ward":0,
"floor":null,
"price":{
"max":null,
"min":null
},
"street":0,
"toilet":null,
"balcony":null,
"bedroom":null,
"district":0,
"frontend":{
"max":null,
"min":null
},
"direction":null,
"living_room":null
}
我需要检查其中的每个值都是0还是null,如果所有值都是0或null,则返回true,如果其中任何一个值不同于null或0,则返回false”>
我不能使用:
Object.values(object).every(i =>(i === null || i ===''))
它返回False,因为嵌套的对象仍将其视为不同于0和null的值
如果条件一次检查每个值,我不想写超长时间
无论如何,是否有迭代对象的步骤,并且要检查嵌套对象的权限?
您好,我目前一直面临这样的问题:如果其中的所有值均为null或0,则检查具有另一个嵌套对象的对象。我的对象如下:{“ city”:0,“ road”:{“ max” :null,...
您可以采用迭代和递归的方法。
一个(不明确的)选项是将JSON.stringify
与回调一起使用,只要找到非0或null的值,就设置一个标志:
您可以创建一个使用fn
来获取值数组的函数(Object.values()
),并使用Array.every()
进行迭代,如果该值是对象,则在其上使用fn
: