radash
Radash 是“新一代的 Lodash”,其目前在 GitHub 上拥有 2.7k Star,npm 周下载量 50k。它的特点如下:
- 一款零依赖的 JavaScript 实用工具库
- 采用 TypeScript 编写,类型已经预先打包
- 舍弃了 Lodash 中逐渐过时的函数
- 推出了众多前所未见但一直想要的新功能
- 源代码的维护以新手的可理解性为首要任务。在大多数情况下,如果想使用 Radash 的某个函数但不想安装它,可以直接从 GitHub 上复制它。
Radash 旨在提供强大的函数来解决 JavaScript 中的现代问题。此外,Radash 中的函数类型定义准确、测试充分、文档完善,且编写时以简洁性为首要考虑。最重要的是,这些函数能够解决现代 JavaScript 中的问题。
Radash 目前提供了 90+ 个实用函数:
debounce()
import { debounce } from 'radash'
const makeSearchRequest = (event) => {
api.movies.search(event.target.value)
}
input.addEventListener('change', debounce({ delay: 100 }, makeSearchRequest)) // 延迟100ms执行
Cancel
const debounced = debounce({ delay: 100 }, api.feed.refresh)
// ... sometime later
debounced.cancel() // 初始化立即执行
Flush
const debounced = debounce({ delay: 100 }, api.feed.refresh)
// ... sometime later
debounced.flush(event) // 初始化立即执行event和debounce