Skip to content

radash 安装

npm

bash
npm install radash

yarn

bash
yarn add radash

pnpm

bash
pnpm add radash

使用

ES6 模块

typescript
import { range, tryit } from 'radash'

// 使用 range 函数
for (const i of range(0, 4)) {
  console.log(i) // 0, 1, 2, 3, 4
}

// 使用 tryit 函数
const [err, response] = await tryit(api.gods.create)({ name: 'Ra' })
if (err) {
  throw new Error('Your god is weak and could not be created')
}

CommonJS

javascript
const { range, tryit } = require('radash')

// 使用 range 函数
for (const i of range(0, 4)) {
  console.log(i) // 0, 1, 2, 3, 4
}

// 使用 tryit 函数
const [err, response] = await tryit(api.gods.create)({ name: 'Ra' })
if (err) {
  throw new Error('Your god is weak and could not be created')
}

浏览器使用

CDN

html
<script src="https://unpkg.com/radash@latest/dist/index.umd.js"></script>
<script>
  const { range, tryit } = window.radash
  
  // 使用函数
  for (const i of range(0, 4)) {
    console.log(i) // 0, 1, 2, 3, 4
  }
</script>

ES6 模块 (CDN)

html
<script type="module">
  import { range, tryit } from 'https://unpkg.com/radash@latest/dist/index.esm.js'
  
  // 使用函数
  for (const i of range(0, 4)) {
    console.log(i) // 0, 1, 2, 3, 4
  }
</script>

TypeScript 支持

Radash 完全支持 TypeScript,所有函数都有完整的类型定义。

typescript
import { range, tryit, select } from 'radash'

// 类型安全的 range 函数
const numbers: number[] = Array.from(range(0, 10))

// 类型安全的 tryit 函数
const [err, result] = await tryit(async () => {
  return await fetch('/api/data')
})

// 类型安全的 select 函数
const users = [
  { id: 1, name: 'Alice', age: 25 },
  { id: 2, name: 'Bob', age: 30 },
  { id: 3, name: 'Charlie', age: 35 }
]

const adultUsers = select(users, 
  user => ({ ...user, isAdult: true }),
  user => user.age >= 18
)

环境要求

  • Node.js >= 14.0.0
  • 支持 ES6 模块的现代浏览器

快速开始

安装完成后,你可以立即开始使用 Radash 的强大功能:

typescript
import { range, tryit, select, objectify } from 'radash'

// 1. 使用 range 进行迭代
for (const i of range(0, 10, 2)) {
  console.log(i) // 0, 2, 4, 6, 8, 10
}

// 2. 使用 tryit 进行错误处理
const [err, data] = await tryit(fetch)('/api/users')
if (err) {
  console.error('Failed to fetch users:', err)
  return
}

// 3. 使用 select 进行数据转换和过滤
const users = await data.json()
const activeUsers = select(users,
  user => ({ ...user, status: 'active' }),
  user => user.isActive
)

// 4. 使用 objectify 将数组转换为对象
const usersById = objectify(users, 
  user => user.id,
  user => user.name
)

Radash 提供了 100+ 个实用函数,涵盖了数组、对象、字符串、数字、异步操作等各个方面,帮助你更高效地编写 JavaScript/TypeScript 代码。

Released under the MIT License.