Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

dev: 更新 utils 工具包 #1

Draft
wants to merge 1 commit into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 2 additions & 6 deletions packages/create-utils/template-javascript/src/index.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,2 @@
import money from './money';
import string from './string';
export default {
money,
string,
};
export * from './money';
export * from './string';
4 changes: 2 additions & 2 deletions packages/create-utils/template-javascript/src/money/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import tozhCN from './tozhCN';
export default {
tozhCN,
export {
tozhCN,
};
59 changes: 30 additions & 29 deletions packages/create-utils/template-javascript/src/money/tozhCN.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,33 +10,34 @@
* // => 伍佰元叁角整
*/
function tozhCN(num) {
if (typeof num === 'number') {
num = String(num);
}
if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(num)) {
throw new Error(`非法数据: ${JSON.stringify(num)}`);
}
let unit = '京亿万仟佰拾兆万仟佰拾亿仟佰拾万仟佰拾元角分';
let str = '';
num += '00';
const pos = num.indexOf('.');
if (pos >= 0) {
num = num.substring(0, pos) + num.substr(pos + 1, 2);
}
unit = unit.substr(unit.length - num.length);
for (let i = 0, len = num.length; i < len; i++) {
str +=
'零壹贰叁肆伍陆柒捌玖'.charAt(Number(num.charAt(i))) + unit.charAt(i);
}
return str
.replace(/零(仟|佰|拾|角)/g, '零')
.replace(/(零)+/g, '零')
.replace(/零(兆|万|亿|元)/g, '$1')
.replace(/(兆|亿)万/g, '$1')
.replace(/(京|兆)亿/g, '$1')
.replace(/(京)兆/g, '$1')
.replace(/(京|兆|亿|仟|佰|拾)(万?)(.)仟/g, '$1$2零$3仟')
.replace(/^元零?|零分/g, '')
.replace(/(元|角)$/g, '$1整');
if (typeof num === 'number') {
num = String(num);
}
if (!/^(0|[1-9]\d*)(\.\d+)?$/.test(num)) {
throw new Error(`非法数据: ${JSON.stringify(num)}`);
}
let unit = '京亿万仟佰拾兆万仟佰拾亿仟佰拾万仟佰拾元角分';
let str = '';
num += '00';
const pos = num.indexOf('.');
if (pos >= 0) {
num = num.substring(0, pos) + num.substr(pos + 1, 2);
}
unit = unit.substr(unit.length - num.length);
for (let i = 0, len = num.length; i < len; i++) {
str +=
'零壹贰叁肆伍陆柒捌玖'.charAt(Number(num.charAt(i))) + unit.charAt(i);
}
return str
.replace(/零(仟|佰|拾|角)/g, '零')
.replace(/(零)+/g, '零')
.replace(/零(兆|万|亿|元)/g, '$1')
.replace(/(兆|亿)万/g, '$1')
.replace(/(京|兆)亿/g, '$1')
.replace(/(京)兆/g, '$1')
.replace(/(京|兆|亿|仟|佰|拾)(万?)(.)仟/g, '$1$2零$3仟')
.replace(/^元零?|零分/g, '')
.replace(/(元|角)$/g, '$1整');
}
export default tozhCN;

module.exports = tozhCN;
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,7 @@
* // '11'
*/
function addZero(num) {
return (num >= 0 && num < 10) ? `0${num}` : String(num);
return (num >= 0 && num < 10) ? `0${num}` : String(num);
}
export default addZero;

module.exports = addZero;
5 changes: 3 additions & 2 deletions packages/create-utils/template-javascript/src/string/index.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import addZero from './addZero';
export default {
addZero,

export {
addZero,
};
9 changes: 2 additions & 7 deletions packages/create-utils/template-typescript/src/index.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,2 @@
import money from './money';
import string from './string';

export default {
money,
string,
};
export * from './money';
export * from './string';
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import tozhCN from './tozhCN';

export default {
export {
tozhCN,
};
Original file line number Diff line number Diff line change
Expand Up @@ -40,4 +40,4 @@ function tozhCN(num: string | number): string {
.replace(/(元|角)$/g, '$1整');
}

export default tozhCN;
export = tozhCN;
Original file line number Diff line number Diff line change
Expand Up @@ -11,4 +11,4 @@
function addZero(num: number) {
return (num >= 0 && num < 10) ? `0${num}` : String(num);
}
export default addZero;
export = addZero;
4 changes: 2 additions & 2 deletions packages/create-utils/template-typescript/src/string/index.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import addZero from './addZero';

export default {
export {
addZero,
}
}