我找到了一种检查对象键的方法在整个数组中是否为空的实际方法,实际上我从长度超过1500的API接收冗长的数组,所以我不想运行map函数,或者循环因为数组太长了。
这是截图。
以下是我从API
获得的回复示例[{
reference: "1234",
address: "abcz",
city: "sydney",
conso: "",
date: "26/04/2017"
},
{
reference: "1234",
address: "abcz",
city: "sydney",
conso: "",
date: "26/04/2017"
},
{
reference: "1234",
address: "abcz",
city: "sydney",
conso: "",
date: "26/04/2017"
},
{
reference: "1234",
address: "abcz",
city: "sydney",
conso: "",
date: "26/04/2017"
},
....
]
答案 0 :(得分:3)
您可以使用Array#some
,它会在第一次查找时退出。
var allEmpty = data.some(o => o[key] !== '');
或检查所有内容,然后使用Array#every
var allEmpty = data.every(o => o[key] === '');
答案 1 :(得分:0)
不清楚你的问题究竟是什么。如果你只想查看数组中的一个对象是否有一个空的' conso'属性然后这将工作,而不必搜索整个数组:
const emptyConso = arr.find(place => !place.conso)
答案 2 :(得分:0)
这很慢......
var ref = "1499"
console.log(JSON.stringify(obj).indexOf('"reference":"'+ref+'"')!=-1);
与
相比console.log(obj.some(o => o["reference"] === ref))