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

如何在Node.js中提取嵌套对象中所有message键的值为数组?

提取ValidatorError对象中message值到数组的实现方法

你在NodeJS+Express后端开发(MongoDB存储)中遇到的场景,可通过以下几种方式提取errors对象里所有message的值到数组:

方法一:Object.values() + map()(最简洁)

直接提取对象的所有值组成数组,再遍历取出每个值的message属性:

const errorMessages = Object.values(errors).map(error => error.message);

方法二:Object.keys() + map()

先获取对象的所有键名,再通过键名访问对应值的message:

const errorMessages = Object.keys(errors).map(key => errors[key].message);

方法三:for...in循环(传统遍历方式)

通过遍历对象的键名,逐个收集message值:

const errorMessages = [];
for (const key in errors) {
  // 确保只遍历对象自身的属性,避免原型链污染
  if (errors.hasOwnProperty(key)) {
    errorMessages.push(errors[key].message);
  }
}

最终输出

执行上述任意方法后,errorMessages数组的内容如下:

[
  "Username must contain at least 3 characters.",
  "Name must contain at least 3 characters.",
  "Email is not valid.",
  "Password must contain at least 8 characters."
]

内容的提问来源于stack exchange,提问作者Deepanshu Yadav

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.04 08:40:47