Skip to content

大家好,我是前端之虎陈随易。

这是我的个人网站 https://chensuiyi.me。

--

今天是 2024年7月30日,也就是在今天,我发起了一个开源项目招募1万个人写1万个函数 的活动,得到了非常多的武林豪杰的响应。

在一天时间内,一共增加 20多个 新函数!

截止本文发布,距离一万个函数还差 9926个,欢迎各路豪杰分享自己珍藏已久的函数。

项目的仓库地址:https://github.com/chenbimo/yidash

这是今天提交函数的贡献者:

函数贡献者

所有函数,目前一共74个:

74个函数

如果你也想参与,可以联系我,拉你进群。

最后是参与规则,如下:

🎁 贡献和福利 ​

贡献者交流群 ​

加笔者微信 chensuiyime,注明 yidash ,拉你进微信交流群。

群内将解答关于代码贡献相关的问题。

代码贡献步骤 ​

  1. 访问本仓库。
  2. fork本仓库。
  3. 拉取fork后的仓库。
  4. 修改代码。
  5. push代码。
  6. 发起pull request。
  7. 等待笔者验证与合并。

不能这样做 ​

  1. 不能引入很多包,需要导包的函数要与我沟通确认,尽量不依赖第三方包。
  2. 不能写很复杂的函数,不能超过500行,要小而美。
  3. 每个文件的作者,一经提交,其他人后续修改也不能改其原作者。

必须这么做 ​

  1. 必须写JSDoc注释和使用案例,不然别人看不懂,不知道怎么用。
  2. 必须写明函数作者,具体参考JSDoc文档。
  3. 必须4格缩进,不喜欢的请不要参与本项目。
  4. 必须按照如下格式写清楚提交信息。

函数开发规则 ​

文件名必须是 yd_[类型]_函数名,yd 是 yidash 的缩写。

比如yd_is_number,is 表示判断,number 表示数字,这是一个判断数字的函数。

函数名必须具名导出,不能使用 default 默认导出,而且要跟文件名一致。

能用 const 的地方,必须用 const。

举例如下:

javascript
import { yd_core_getTag } from './yd_core_getTag.js';
export const yd_is_number = (value) => {
    return yd_core_getTag(value) === '[object Number]' && !isNaN(value);
};

代码提交格式 ​

提交主题: 提交具体内容

举例:

  • 完善功能: yd_is_number函数增加判断机制
  • 代码重构: yd_number_thousands重新设计
  • 新增函数: 增加yd_is_array函数

贡献者福利 ​

  1. 增加开源参与度。
  2. 体会开源的乐趣。
  3. 为自己的职业经历增加一个彩蛋。
  4. 函数会进行署名,你将被每一个使用yidash的人看到。
  5. 额外获得VSCode扩展fnMap永久注册码一枚。

何以解忧,唯有代码。不忘初心,方得始终。