Skip to content

Commit 4cc29f1

Browse files
author
Simon he
committed
chore: update
1 parent 4502b2e commit 4cc29f1

File tree

6 files changed

+66
-62
lines changed

6 files changed

+66
-62
lines changed

README.md

Lines changed: 17 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -476,22 +476,23 @@ console.log(calNum.mul(0.1, 0.2, 0.2)) => 0.004
476476
```
477477
478478
## 类型判断
479-
- isArray(obj) - 判断是否是数组
480-
- isPlainObject(obj) - 判断是否是纯对象
481-
- isFn(obj) - 判断是否是函数
482-
- isStr(obj) - 判断是否是字符串
483-
- isNum(obj) - 判断是否是数字
484-
- isBool(obj) - 判断是否是布尔值
485-
- isUndef(obj) - 判断是否是undefined
486-
- isNull(obj) - 判断是否是null
487-
- isNaN(obj) - 判断是否是NaN
488-
- isReg(obj) - 判断是否是正则
489-
- isSymbol(obj) - 判断是否是Symbol
490-
- isPromise(obj) - 判断是否是Promise
491-
- isDate(obj) - 判断是否是日期
492-
- isMobile - 判断是否是手机号
493-
- isEmail - 判断是否是邮箱
494-
- isIdCard - 判断是否是身份证
479+
- isArray(o) - 判断是否是数组
480+
- isPlainObject(o) - 判断是否是纯对象
481+
- isFn(o) - 判断是否是函数
482+
- isStr(o) - 判断是否是字符串
483+
- isNum(o) - 判断是否是数字
484+
- isBool(o) - 判断是否是布尔值
485+
- isUndef(o) - 判断是否是undefined
486+
- isNull(o) - 判断是否是null
487+
- isNaN(o) - 判断是否是NaN
488+
- isReg(o) - 判断是否是正则
489+
- isSymbol(o) - 判断是否是Symbol
490+
- isPromise(o) - 判断是否是Promise
491+
- isDate(o) - 判断是否是日期
492+
- isMobile(o) - 判断是否是手机号
493+
- isEmail(o) - 判断是否是邮箱
494+
- isSet(o) - 判断是否是Set
495+
- isMap(o) - 判断是否是Map
495496
496497
## GitHub地址
497498
[欢迎PR](https://github.com/Simon-He95/simon-js-tool)

playground/src/main.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { createApp } from 'vue'
22
import { createRouter, createWebHistory } from 'vue-router'
33
import routes from 'virtual:generated-pages'
4-
import { monitorPef, vFetch, calNum, lazyLoad } from '../../src'
4+
import { monitorPef, vFetch } from '../../src'
55
import App from './App.vue'
66

77
import '@unocss/reset/tailwind.css'
@@ -34,8 +34,8 @@ instance({
3434
return res
3535
})
3636
monitorPef()
37-
console.log(calNum.sub(0.1, 0.2, 0.2))
38-
console.log(calNum.mul(0.1, 0.2, 0.2))
37+
// console.log(calNum.sub(0.1, 0.2, 0.2))
38+
// console.log(calNum.mul(0.1, 0.2, 0.2))
3939

4040
// console.log(formateNum(123456789.123456789, 3, 'floor'))
4141
// console.log(uppercaseNum(-122.12))

src/calNum.ts

Lines changed: 39 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,59 +1,63 @@
11
export const calNum = {
22
add(...args: (number | string)[]): number {
3-
return args.reduce((total, num) => accAdd(+total, +num)) as number;
3+
return args.reduce((total, num) => accAdd(+total, +num)) as number
44
},
55
sub(...args: (number | string)[]): number {
6-
return args.reduce((total, num) => accAdd(+total, -num)) as number;
6+
return args.reduce((total, num) => accAdd(+total, -num)) as number
77
},
88
mul(...args: (number | string)[]): number {
9-
return args.reduce((total, num) => accMul(+total, +num)) as number;
9+
return args.reduce((total, num) => accMul(+total, +num)) as number
1010
},
1111
div(...args: (number | string)[]): number {
12-
return args.reduce((total, num) => accDiv(+total, +num)) as number;
12+
return args.reduce((total, num) => accDiv(+total, +num)) as number
1313
},
1414
}
1515

16-
1716
function accAdd(arg1: number, arg2: number): number {
18-
let r1, r2, m;
17+
let r1, r2
1918
try {
20-
r1 = arg1.toString().split('.')[1].length;
21-
} catch (e) {
22-
r1 = 0;
19+
r1 = arg1.toString().split('.')[1].length
20+
}
21+
catch (e) {
22+
r1 = 0
2323
}
2424
try {
25-
r2 = arg2.toString().split('.')[1].length;
26-
} catch (e) {
27-
r2 = 0;
25+
r2 = arg2.toString().split('.')[1].length
26+
}
27+
catch (e) {
28+
r2 = 0
2829
}
29-
m = Math.pow(10, Math.max(r1, r2));
30-
return (arg1 * m + arg2 * m) / m;
31-
};
30+
const m = 10 ** Math.max(r1, r2)
31+
return (arg1 * m + arg2 * m) / m
32+
}
3233

3334
function accMul(arg1: number, arg2: number): number {
34-
let m = 0;
35-
let s1 = arg1.toString();
36-
let s2 = arg2.toString();
35+
let m = 0
36+
const s1 = arg1.toString()
37+
const s2 = arg2.toString()
3738
try {
38-
m += s1.split('.')[1].length;
39-
} catch (e) { }
39+
m += s1.split('.')[1].length
40+
}
41+
catch (e) { }
4042
try {
41-
m += s2.split('.')[1].length;
42-
} catch (e) { }
43-
return Number(s1.replace('.', '')) * Number(s2.replace('.', '')) / Math.pow(10, m);
44-
};
43+
m += s2.split('.')[1].length
44+
}
45+
catch (e) { }
46+
return Number(s1.replace('.', '')) * Number(s2.replace('.', '')) / 10 ** m
47+
}
4548

4649
function accDiv(arg1: number, arg2: number): number {
47-
let t1 = 0;
48-
let t2 = 0;
49-
let r1; let r2;
50+
let t1 = 0
51+
let t2 = 0
5052
try {
51-
t1 = arg1.toString().split('.')[1].length;
52-
} catch (e) { }
53+
t1 = arg1.toString().split('.')[1].length
54+
}
55+
catch (e) { }
5356
try {
54-
t2 = arg2.toString().split('.')[1].length;
55-
} catch (e) { }
56-
r1 = Number(arg1.toString().replace('.', ''));
57-
r2 = Number(arg2.toString().replace('.', ''));
58-
return (r1 / r2) * Math.pow(10, t2 - t1);
59-
};
57+
t2 = arg2.toString().split('.')[1].length
58+
}
59+
catch (e) { }
60+
const r1 = Number(arg1.toString().replace('.', ''))
61+
const r2 = Number(arg2.toString().replace('.', ''))
62+
return (r1 / r2) * 10 ** (t2 - t1)
63+
}

src/isBottom.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
1-
export function isBottom(distance: number = 0): boolean {
2-
return document.documentElement.clientHeight + window.scrollY + distance >=
3-
(document.documentElement.scrollHeight || document.documentElement.clientHeight);
4-
1+
export function isBottom(distance = 0): boolean {
2+
return document.documentElement.clientHeight + window.scrollY + distance
3+
>= (document.documentElement.scrollHeight || document.documentElement.clientHeight)
54
}

src/isMap.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { _toString } from './common';
1+
import { _toString } from './common'
22
export function isMap(o: any) {
3-
return _toString.call(o) === '[object Map]';
3+
return _toString.call(o) === '[object Map]'
44
}

src/isSet.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { _toString } from './common';
1+
import { _toString } from './common'
22
export function isSet(o: any) {
3-
return _toString.call(o) === '[object Set]';
3+
return _toString.call(o) === '[object Set]'
44
}

0 commit comments

Comments
 (0)