https://github.com/fudiwei/skit-extensions.js
一个多功能的 JavaScript 内置对象原型链扩展方法工具库。A powerful JavaScript utility library for built-in object extensions.
https://github.com/fudiwei/skit-extensions.js
javascript javascript-tools
Last synced: 9 months ago
JSON representation
一个多功能的 JavaScript 内置对象原型链扩展方法工具库。A powerful JavaScript utility library for built-in object extensions.
- Host: GitHub
- URL: https://github.com/fudiwei/skit-extensions.js
- Owner: fudiwei
- License: mit
- Created: 2019-10-21T03:37:53.000Z (about 6 years ago)
- Default Branch: main
- Last Pushed: 2023-09-13T14:43:40.000Z (over 2 years ago)
- Last Synced: 2025-03-04T23:03:58.216Z (10 months ago)
- Topics: javascript, javascript-tools
- Language: JavaScript
- Homepage:
- Size: 358 KB
- Stars: 2
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# @skit/extensions
[](https://www.npmjs.com/package/@skit/extensions)
[](https://www.npmjs.com/package/@skit/extensions)
[](https://travis-ci.org/fudiwei/skit-extensions.js)
[](https://mit-license.org/)
一个多功能的 JavaScript 内置对象原型链扩展方法工具库。
- 中文文档
- [English Documentation](./README.en-US.md)
---
## 特性
- 对部分内置对象扩展了若干常用原型链方法(所有 API 均被设计为以 `$` 开头、且不可枚举,无需担心与 ECMAScript 标准的向前兼容问题);
- 各模块相互独立,可单独拷贝到项目中使用;
- 支持 TypeScript。
---
## 用法
### 安装:
```shell
npm install @skit/extensions
```
### 导入:
```javascript
/* 使用 `require` 导入 */
require('@skit/extensions');
/* 使用 `import` 导入 */
import '@skit/extensions';
```
### API:
请参考 _/types/\*.d.ts_ 下的声明文件。
- Array:
- `Array.$shuffle`
- `Array.prototype.$distinct`
- `Array.prototype.$distinctBy`
- `Array.prototype.$fill`
- `Array.prototype.$findLast`
- `Array.prototype.$findLastIndex`
- `Array.prototype.$groupBy`
- `Array.prototype.$groupByToMap`
- `Array.prototype.$insertAt`
- `Array.prototype.$max`
- `Array.prototype.$maxBy`
- `Array.prototype.$min`
- `Array.prototype.$minBy`
- `Array.prototype.$removeAt`
- `Array.prototype.$shuffle`
- `Array.prototype.$sortAsc`
- `Array.prototype.$sortAscBy`
- `Array.prototype.$sortDesc`
- `Array.prototype.$sortDescBy`
- Boolean:
- `Boolean.$from`
- Date:
- `Date.$now`
- `Date.$today`
- `Date.$unix`
- `Date.prototype.$addMilliseconds`
- `Date.prototype.$addSeconds`
- `Date.prototype.$addMinutes`
- `Date.prototype.$addHours`
- `Date.prototype.$addDays`
- `Date.prototype.$addMonths`
- `Date.prototype.$addYears`
- `Date.prototype.$format`
- `Date.prototype.$isToday`
- `Date.prototype.$isWeekend`
- `Date.prototype.$midnight`
- `Date.prototype.$unix`
- Function:
- `Function.$noop`
- `Function.$debounce`
- `Function.$throttle`
- Number:
- `Number.$isNumeric`
- `Number.$isOdd`
- `Number.$isEven`
- `Number.prototype.$toFloor`
- `Number.prototype.$toCeil`
- `Number.prototype.$toRound`
- Object:
- `Object.$deepEquals`
- `Object.$merge`
- Promise:
- `Promise.$delay`
- `Promise.$sequential`
- `Promise.$try`
- `Promise.$waitUntil`
- `Promise.$waitWhile`
- String:
- `String.$equals`
- `String.prototype.$reverse`
- `String.prototype.$toCamelCase`
- `String.prototype.$toKebabCase`
- `String.prototype.$toPascalCase`
- `String.prototype.$toSnakeCase`
---
## 更新记录
请参阅 [CHANGELOG](./CHANGELOG.md)。