【源码阅读】omit.js|omit的实现与库的快速搭建

本文详细探讨了JavaScript工具函数omit.js的实现原理,对比了与lodash、underscore的区别,介绍了omit.js的包开发和发布流程,涉及到father库开发脚手架和np包发布工具的使用。
摘要由CSDN通过智能技术生成

单词 omit 有「从中剔除,不包含」的释义,而 omit 工具函数的工作是「从对象中剔除指定属性作为新对象返回」,举一个例子

// 从哆啦A梦的信息中剔除掉「物种」和「生日」信息
const info = { name: "Doraemon", species: "Robot Cat", birthdate: "2112/09/03" }
const basicInfo = omit(info, ["species", "birthdate"]);

console.log(basicInfo); // { name: "Doraemon" }
console.log(info); // { name: "Doraemon", species: "Robot Cat", birthdate: "2112/09/03" } 

omit 是一个不可或缺的工具函数,lodash 和 underscore 中都有他的影子,今天阅读的 omit.js 则是对 omit 做了单独实现。

omit.js 的基本情况

以2023年1月17日为时间节点,omit.js 最近版本发布在 2020年7月8日,周下载量30w以上。

查看 Github 的贡献者列表和依赖 omit.js 的 package 列表,可以分析出 omit.js 是一个由蚂蚁集团前端大佬维护的包,并且仍旧应用于 @ant-design/pro-table @ant-design/pro-table 等项目。

如此一来可以得出结论:omit.js 是一个仍在维护中并处于长期稳定状态的项目。

omit 功能的实现

omit.js 的实现代码在 omit.js/index.js at…

function omit(obj, fields) {// eslint-disable-next-line prefer-object-spreadconst shallowCopy = Object.assign({}, obj);for (let i = 0; i < fields.length; i += 1) {const key = fi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值