eleven-methods
Version:
常用方法累计
186 lines (119 loc) • 4.2 kB
Markdown
# 工作中常用方法总结
## 下载
```powershell
npm i eleven-methods -D
```
## **引入**
```js
import { ElevenDay } from 'eleven-methods' // 首字母大写 其他一样
const d = new ElevenDay()
// d.方法名
// elevenNum 数字相关
// elevenArr 数组相关
// elevenUrl url相关
```
## 使用
```js
d.(方法名)(args)
// 方法调用为当前创建的实例上的方法
```
## 1.elevenNum(数字相关)
### convertToChinaNum(数字转汉字)
```js
elevenNum.convertToChinaNum(10) // 十
```
## 2.elevenDay(时间相关)
### 2.1 getCurrentYTD (获取当前年的年月日返回数组对象)
```js
elevenDay.getCurrentYTD()
```
### 2.2 getCustomYTD (获取自定义年份的年月日返回数组对象)
```js
elevenDay.getCustomYTD('2023')
```
### 2.3 AddDays (计算几天后的日期[几天前的日期 传 负数即可])
```js
elevenDay.AddDays(2) // 返回当前日期后两天的日期 字符串
elevenDay.AddDays(-2) // 返回当前日期前两天的日期 字符串
```
### 2.4 calcTimeRange (计算时间较当前时间的时间范围)
```js
elevenDay.calcTimeRange('2022-01-06 12:00:00') // 假如当前时间是2022年1月6日 16:01:55 // 此时返回值为 4小时前
```
### 2.5 showWeekLastDay (返回本周最后一天的时间)
```js
elevenDay.showWeekLastDay()
```
### 2.6 showWeekFirstDay(返回本周第一天的时间)
```js
elevenDay.showWeekFirstDay()
```
### 2.7 showMonthFirstDay(返回本月第一天的时间)
```js
elevenDay.showMonthFirstDay()
```
### 2.8 showMonthLastDay(返回本月最后一天的时间)
```js
elevenDay.showMonthLastDay()
```
### 2.9 getTimeInterval(自定义返回时间间隔)
```js
elevenDay.showMonthLastDay('2022-01-07 12:00:00', '2022-01-07 17:00:00')
```
****
## 3.elevenArr(数组相关)
### 3.1 filterData(数组对象筛选数组)
```js
// 示例代码
const arr = [1]
const selArr = [{id:1},{id:2},{id:3}]
elevenArr.filterData(arr,selArr,'id') // 第一个参数为目标数组 第二个为筛选的数字 第三个为筛选的属性
// [{id:1}]
```
### 3.2 splitArr(根据长度生成对应的二维数组)
```js
var arr = [1,2,3,4,5,6]
elevenArr.splitArr(arr,2) // [[1,2],[3,4],[5,6]]
```
### 3.3 filter兼容写法
```javascript
// 在需要兼容的文件头部引用方法即可
// 因filter 被添加到 ECMA-262 标准第 5 版中,因此在某些实现环境中不被支持。 例如 ie8 等等
elevenArr.compatibleWithTheFilter()
```
### 3.4 flatDeep(无限嵌套数组扁平化)
```js
// 如果不清楚当前数组下有多少嵌套 则传Infinity 表示一直到将数组全部扁平化才停止
var arr = [1,[2,3],4,[5,[6,7,[8],0]]]
elevenArr.flatDeep(arr,Infinity) // 第一个入参为嵌套的数组数据 第二个 看上一层提示将对应参数传入 第三个入参默认为当前的数据不为undefined 的情况 如需过滤其他数据 则在第三个入参加入 运行即可
// 出自 MDN JavaScript flat 方法拓展
```
## 4.elevenUrl(url相关)
### 4.1 getURLString (获取url传递的参数)
```js
elevenUrl.getURLString(arg) // 其中arg为你想获取到的参数属性
// www.baidu.com?a=1
elevenUrl.getURLString('a')//1
```
### 4.2 changeURLArg (修改url传递的参数)
```js
var url = 'www.baidu.com?a=1'
elevenUrl.changeURLArg(url,'a',2) // www.baidu.com?a=2
```
## 5.elevenOther(其他)
### 5.1 动态添加js
```js
elevenOther.loadJs('js地址',回调函数)
```
### 5.2 查找多级数组对象下的某个字段值并以数组形式返回
```js
elevenOther.findField('字段名','需要筛选的数据集')
```
# 正则相关
## 使用
```js
import RegularArrangement from 'eleven-methods/utils/regular/index'
var r = new RegularArrangement()
r.regularStatistics('金钱') // 此时会打印出金钱相关的正则 在f12 控制台 需要啥复制啥即可
// 方法入参有几种情况: "校验数字" "校验字符" "特殊情况" "金钱"
```