Как проверить все имена объекта на пустоту?
Добрый день. Есть массив, внутри которого могут быть пустые объекты. Как проверить их на пустоту? Так проверяю только один test[i].name, а как проверить summ и number?
var test = [{name:{}, summ:{}, number:{}},{name:'name', summ:132, number:2}]; for (var i = 0; i < test.length; i++) { if(JSON.stringify(test[i].name)!="{}"){ console.log(test[i]); } } Что то вроде если хотя бы один из объектов пуст, не обрабатывать его. |
Если количество свойств объекта равно 0, то он пуст - Object.keys(obj).length
|
var filtered = test.filter(el=>Object.keys(el).every(prop=>JSON.stringify(el[prop])!="{}")); |
var test = [{name:{}, summ:{}, number:{}},{name:'name', summ:132, number:2}]; for (var i = 0; i < test.length; i++) { for(key in test[i]) { if(JSON.stringify(test[i][key]) != "{}" ){ console.log(test[i][key]); } } } |
Всем спасибо :thanks:
|
Часовой пояс GMT +3, время: 03:06. |