You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何检测JavaScript对象中是否存在非null值?.some方法返回异常

问题分析与解决

你的代码逻辑错在判断对象的键(key)是否非null,但对象的键本身都是字符串类型(比如"content-type"、phone),永远不可能是null,所以some方法必然返回true,和你要检查对象值(value)的需求完全不符。

正确写法

要检查对象中是否存在非null的值,应该用Object.values()获取所有属性值,再配合some方法判断:

const err = {
  "content-type": null,
  phone: null,
  firstName: null,
  lastName: null,
  email: null,
  website: null,
  supplier: null
}

// 检查是否存在非null的错误值
const hasErrors = Object.values(err).some(value => value !== null)
console.log(hasErrors) // 所有值为null时返回false,存在非null值时返回true

扩展:适配表单常见错误场景

如果表单错误还包含空字符串、undefined这类情况,可以调整判断条件,同时排除这些无效值:

const hasErrors = Object.values(err).some(value => value != null && value !== '')

value != null会同时排除null和undefined,再加上排除空字符串,更符合实际表单验证的需求。

内容的提问来源于stack exchange,提问作者Richard Bridge

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 09:05:28