为了账号安全,请及时绑定邮箱和手机立即绑定

如果我的对象在任何地方都有一个空字符串,我该如何返回 false?

如果我的对象在任何地方都有一个空字符串,我该如何返回 false?

叮当猫咪 2022-06-09 10:31:57
我有一个这样的对象:const obj = {  id: '123abc',  carrier_name: '',  group_id: '',  member_id: '',  plan_name: '',}false如果对象的任何部分有一个空字符串,我想返回。例如:const obj = {  id: '123abc',  carrier_name: ''ABC,  group_id: '123',  member_id: 'xyz',  plan_name: '',}以上将返回false。同样,如果这样的东西部分填充:const obj = {  id: '123abc',  carrier_name: ''ABC,  group_id: '',  member_id: 'xyz',  plan_name: '',}这将返回错误。我手动尝试了这样的事情:return obj.carrier_name.length === 0 || obj.group_id.length === 0 || obj.member_id.length === 0 || obj.plan_name.length === 0但我想知道是否有更好的方法。
查看完整描述

3 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

Object.values与 一起使用Array.prototype.some:


const obj = {

  id: '123abc',

  carrier_name: 'a',

  group_id: 'a',

  member_id: 'a',

  plan_name: 'a',

}


console.log(!Object.values(obj).some(val => val === ""))


const obj2 = {

  id: '123abc',

  carrier_name: '',

  group_id: 'a',

  member_id: 'a',

  plan_name: 'a',

}


console.log(!Object.values(obj2).some(val => val === ""))


查看完整回答
反对 回复 2022-06-09
?
元芳怎么了

TA贡献1798条经验 获得超7个赞

简单的循环和检查


const obj = {

  id: '123abc',

  carrier_name: 'a',

  group_id: 'a',

  member_id: '',

  plan_name: '',

}


const checkIfEmpty = obj => {

  for (const property in obj) {

    if (obj[property].length === 0) {

      return true

    }

  }

  return false

}


console.log(checkIfEmpty(obj))


查看完整回答
反对 回复 2022-06-09
?
精慕HU

TA贡献1845条经验 获得超8个赞

如果您只有 strings ,您可以使用everyandBoolean作为回调进行检查。


const check = object => Object.values(object).every(Boolean);


console.log(check({ foo: 'bar' }));          //  true

console.log(check({ foo: '' }));             // false

console.log(check({ foo: '', bar: 'baz' })); // false

console.log(check({ foo: '', bar: '' }));    // false


查看完整回答
反对 回复 2022-06-09
  • 3 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信