卖坚果的怪叔叔 卖坚果的怪叔叔
  • 首页
  • 生活
  • 技术
  • 记录
  • 工具箱
  • 关于我
首页 › 技术 › 将数组中空值字段赋默认值!

将数组中空值字段赋默认值!

坚果大叔
2023-04-25 14:49:11技术阅读 3,973
export const replaceEmptyData = (obj, defaultValue = '-') =>
  Array.isArray(obj)
    ? obj.map(item => replaceEmptyData(item, defaultValue))
    : Object.fromEntries(
        Object.entries(obj).map(([key, value]) => [key, !value ? defaultValue : value])
      );

在上述代码中,我们首先判断传入的对象是否为数组,如果是数组则对其进行map()操作,否则将其转换成键值对数组并调用Object.fromEntries()方法生成一个新的对象。

如果传入的对象为数组,则先使用map()方法对其进行遍历,然后对每个元素调用replaceEmptyWithDefault()函数进行处理,并将处理结果作为新数组返回。如果传入的对象不是数组,则使用Object.entries()方法将对象转换成键值对数组,然后使用map()方法对每个键值对进行遍历。对于每个键值对,我们使用解构赋值将其拆分成键 key 和值 value,然后使用空值合并运算符 ?? 将空值替换为默认值 defaultValue。最终,我们使用Object.fromEntries()方法将所有键值对结合成一个新的对象并返回。

使用这个函数,我们可以很方便地处理数组和对象中的空值。例如:

import { replaceEmptyWithDefault } from './path/to/your/module';

const arr = [
  { name: 'Alice', age: 18 },
  { name: 'Bob', age: null },
  { name: 'Charlie', age: undefined }
];

const obj = {
  name: 'Alice',
  age: null,
  gender: ''
};

const result1 = replaceEmptyWithDefault(arr, '-');
const result2 = replaceEmptyWithDefault(obj, '-');

console.log(result1);
// Output:
// [
//   { name: 'Alice', age: 18 },
//   { name: 'Bob', age: '-' },
//   { name: 'Charlie', age: '-' }
// ]

console.log(result2);
// Output:
// { name: 'Alice', age: '-', gender: '-' }
赞赏 赞(0)
周末出游,惊喜相伴——水牛的美丽邂逅。
上一篇
5.1游记
下一篇
在小程序中查看

这是个😊,挣点服务器费用😜

热门文章
重学JavaScript之window对象
三月就是拍花🌸
Python获取好友地区分布及好友性别分布
傍晚
啊哦,全员核酸了。
四月的倒数几天了
专题标签
agent (1) CSS (15) dom (1) Es6入门系列 (14) Git (3) html (1) iview (1) JavaScript (9) js (4) Lif (1) Node (4) pyecharts (1) Python (10) ref (1) scriptable (1) Skill (1) vsCode (1) vue (4) wordpress (2) 三月 (1) 上海 (1) 假期 (1) 其他分享 (3) 前端两三问 (15) 古镇 (1) 外滩 (1) 对象 (1) 小程序 (5) 年度总结 (6) 年终总结 (1) 微信机器人 (4) 打字机 (1) 技术 (1) 日常问题 (8) 日常问题记录 (1) 春天 (2) 服务器 (2) 海族馆 (1) 生活 (8) 网上国网 (1) 记录 (3) 通勤 (1) 重学JavaScript (11) 面试题 (10) 🌸 (1)
什么是Agent?
2026-08-15 23:49:12
431 0 2
什么是 Skill?
2026-08-12 21:32:42
348 1 0
失业在家,我给小朋友做了一个练字小程序!
2026-08-07 16:21:52
690 10 1
上线8年,15万用户的小程序,一共赚了多少钱?
2026-05-30 18:01:24
4,685 4 0
  • 0
博主

一位佛系的前端开发者,略通摄影,乐于尝试新事物,热衷于美食。

友链
故事胶片
公众号
坚果大叔 执行上下文 卖坚果的怪叔叔 Dacking
Copyright © 2017-2026 卖坚果的怪叔叔

开往-友链接力

萌ICP备20230818号

苏ICP备18048410号-3
  • 首页
  • 生活
  • 技术
  • 记录
  • 工具箱
  • 关于我
# CSS # # JavaScript # # vue # # 微信 # # 生活 #
坚果大叔
345
文章
171
评论
432
喜欢