Commit eb4f2617b950a064bb30ac2f9a166d67d4e54db2
1 parent
8d320159
add filters
Showing
1 changed file
with
83 additions
and
0 deletions
common/filters.js
0 → 100644
1 | +// 为空处理 return ‘-’ | |
2 | +const tranNull = value => { | |
3 | + if (value === null || value === undefined || value === '') return '-' | |
4 | + return value | |
5 | +} | |
6 | + | |
7 | + | |
8 | +/* | |
9 | + @切割字符串 | |
10 | + @str原字符串 | |
11 | + @num字符位数 | |
12 | +*/ | |
13 | +const cutString = (str, num) => { | |
14 | + var _str = ""; | |
15 | + if (str == null) { | |
16 | + return ""; | |
17 | + } | |
18 | + if (str.length >= num) { | |
19 | + var strN = str.substring(0, num); | |
20 | + strN += "..."; | |
21 | + _str = strN; | |
22 | + } else { | |
23 | + _str = str; | |
24 | + } | |
25 | + return _str; | |
26 | +} | |
27 | + | |
28 | +// 钱前面加“¥” | |
29 | +const RMB = (value) => { | |
30 | + if (value === '--' || value === null || value === undefined) return value | |
31 | + return `¥${value}` | |
32 | +} | |
33 | + | |
34 | +// 保留两位小数 | |
35 | +const toFixed2 = num => { | |
36 | + let f = Number(parseFloat(num)); | |
37 | + if (isNaN(f)) return false; | |
38 | + let z = Math.round(num * 100) / 100; | |
39 | + let s = z.toString(); | |
40 | + let rs = s.indexOf('.'); | |
41 | + if (rs < 0) { | |
42 | + rs = s.length; | |
43 | + s += '.'; | |
44 | + } | |
45 | + while (s.length <= rs + 2) { | |
46 | + s += '0'; | |
47 | + } | |
48 | + return s | |
49 | +} | |
50 | + | |
51 | +// 数字每三位加个逗号 | |
52 | +const toThousands =(num)=> { | |
53 | + var result = [], | |
54 | + counter = 0; | |
55 | + num = (num || 0).toString().split(''); | |
56 | + for (var i = num.length - 1; i >= 0; i--) { | |
57 | + counter++; | |
58 | + result.unshift(num[i]); | |
59 | + if (!(counter % 3) && i != 0) { | |
60 | + result.unshift(','); | |
61 | + } | |
62 | + } | |
63 | + return result.join(''); | |
64 | + } | |
65 | + | |
66 | + // 根据身份证号码判断男女 | |
67 | + const sexFilter = value => { | |
68 | + if (!value) { | |
69 | + return '' | |
70 | + } else { | |
71 | + let data = value.substr(16, 1) % 2 === 1 ? '男' : '女' | |
72 | + return data | |
73 | + } | |
74 | + } | |
75 | + | |
76 | +export default { | |
77 | + tranNull, | |
78 | + RMB, | |
79 | + cutString, | |
80 | + toFixed2, | |
81 | + toThousands, | |
82 | + sexFilter, | |
83 | +} | ... | ... |