Skip to content

About

日常开发用到的JS工具函数,纯手工封装

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

wjs-js-toolkit

11年前端开发积累 · JavaScript 常用工具函数库

MIT License JavaScript Maintenance

将11年前端开发积累的常用 JavaScript 工具函数封装笔记进行开源,涵盖类型判断、日期处理、数字金额、字符串操作、表单校验、数组对象、DOM 操作、本地存储、事件处理等 20 个常用场景。

📖 在线文档 & 函数速查


✨ 特性

  • 零依赖 - 纯原生 JS 实现,无任何第三方依赖
  • wjs_ 前缀 - 统一命名空间,不污染全局,无命名冲突
  • 按需引入 - 20 个独立模块,可单独引入也可完整引入
  • 完整注释 - 每个函数都有标准 JSDoc 注释,含参数说明和返回值
  • 全浏览器兼容 - 兼容所有主流浏览器,早期版本兼容 IE9+
  • 持续维护 - 从 2015 年持续更新维护至今

🚀 快速开始

浏览器直接引入

<!-- 引入日期工具 -->
<script src="src/date.js"></script>
<script>
  // 格式化日期
  var dateStr = wjs_date_format(new Date(), 'yyyy-MM-dd hh:mm:ss');
  console.log(dateStr); // 2024-01-15 10:30:00

  // 计算相对时间
  var time = wjs_date_relativeTime(new Date('2024-01-10'));
  console.log(time); // 5天前
</script>

模块化引入

import { wjs_date_format, wjs_date_relativeTime } from 'wjs-js-toolkit/src/date.js';

// 格式化日期
const dateStr = wjs_date_format(new Date(), 'yyyy-MM-dd');

// 相对时间
const time = wjs_date_relativeTime(new Date('2024-01-10'));

📦 功能模块

模块 文件 说明 函数数量
🔍 类型判断 type.js typeof、toString、instanceof 等多种判断方式 80+
📅 日期时间 date.js 日期格式化、计算、解析、相对时间、节假日 100+
💰 数字金额 number.js 金额格式化、高精度运算、数字转中文大写 120+
📝 字符串 string.js 截取、转换、格式化、脱敏、编码解码 100+
📊 数组操作 array.js 去重、排序、分组、筛选、扁平化 110+
🧩 对象操作 object.js 深拷贝、合并、属性操作、序列化 90+
🌐 DOM 操作 dom.js 元素查询、创建、样式操作、类名操作 100+
💾 本地存储 storage.js localStorage / sessionStorage 封装,支持过期 60+
✅ 表单校验 validate.js 手机号、邮箱、身份证、银行卡、车牌号 90+
🍪 Cookie 操作 cookie.js 设置、读取、删除、过期时间、域设置 50+
🔗 URL 处理 url.js 解析、拼接、参数操作、编码解码 120+
⚡ 事件处理 event.js 事件绑定、防抖节流、事件委托、事件总线 130+
🔄 函数式编程 function.js 柯里化、组合、偏应用、记忆化、管道 110+
⚙️ Promise 工具 promise.js 并发限制、重试、超时、批量处理 90+
📋 深拷贝/深度操作 deep.js 深拷贝、深度对比、深度合并、深度遍历 70+
🗂️ 集合处理 collection.js Map、Set、WeakMap、WeakSet 操作 200+
🎲 随机生成 random.js 随机数、随机字符串、随机颜色、模拟数据 100+
🌍 浏览器检测 browser.js 浏览器类型、设备、系统、API 特性检测 100+
📈 性能监控 performance.js 性能计时、Web Vitals、内存监控、FPS 120+
🛠️ 通用工具 common.js 事件发射器、状态机、互斥锁、熔断器 200+

📂 目录结构

wjs-js-toolkit/
├── src/                # 工具函数源码
│   ├── type.js         # 类型判断
│   ├── date.js         # 日期时间
│   ├── number.js       # 数字金额
│   ├── string.js       # 字符串工具
│   ├── array.js        # 数组操作
│   ├── object.js       # 对象操作
│   ├── dom.js          # DOM 操作
│   ├── storage.js      # 本地存储
│   ├── validate.js     # 表单校验
│   ├── cookie.js       # Cookie 操作
│   ├── url.js          # URL 处理
│   ├── event.js        # 事件处理
│   ├── function.js     # 函数式编程
│   ├── promise.js      # Promise 工具
│   ├── deep.js         # 深拷贝/深度操作
│   ├── collection.js   # 集合处理
│   ├── random.js       # 随机生成
│   ├── browser.js      # 浏览器检测
│   ├── performance.js  # 性能监控
│   └── common.js       # 通用工具
├── index.html          # 可视化展示页面
├── LICENSE             # MIT 开源协议
└── README.md           # 项目说明

🌐 浏览器兼容性

Chrome Edge Firefox Safari IE(早期版本)
✅ 全版本 ✅ 全版本 ✅ 全版本 ✅ 全版本 ⚠️ 9+ 兼容

所有基于 Chromium 内核的浏览器(360、夸克、搜狗、UC等)均完全兼容。


📄 License

MIT © wjs (王金盛) 2015-2026

About

日常开发用到的JS工具函数,纯手工封装

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages