整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

编程小技巧:阿拉伯数字转中文汉字的JavaScript方法

天发表了一篇阿拉伯数字转中文汉字的Java方法的文章。

Java方法在后端比较方便。但是前端转换的话,用JS方法就方便多了。

为了前端转换不用请求服务器。现把同样逻辑的Java方法,用JS来实现。


function convertNumberToChinese(inputData) {
    var decimalUnit = new Map();
    decimalUnit.set(-2, "分");
    decimalUnit.set(-1, "角");
    decimalUnit.set(1, "元");
    decimalUnit.set(2, "拾");
    decimalUnit.set(3, "佰");
    decimalUnit.set(4, "仟");
    decimalUnit.set(5, "万");
    decimalUnit.set(6, "拾");// 十万
    decimalUnit.set(7, "佰");// 佰万
    decimalUnit.set(8, "仟");// 仟万
    decimalUnit.set(9, "亿");
    decimalUnit.set(10, "拾");// 十亿
    decimalUnit.set(11, "佰");// 佰亿
    decimalUnit.set(12, "仟");// 仟亿
    decimalUnit.set(13, "兆");
    decimalUnit.set(14, "拾");// 十兆
    decimalUnit.set(15, "佰");// 佰兆
    decimalUnit.set(16, "仟");// 仟兆

    var extraUnit = new Array();
    extraUnit.push("万");
    extraUnit.push("亿");
    extraUnit.push("兆");

    var unitCount = new Map();
    unitCount.set(0, "零");
    unitCount.set(1, "壹");
    unitCount.set(2, "贰");
    unitCount.set(3, "叁");
    unitCount.set(4, "肆");
    unitCount.set(5, "伍");
    unitCount.set(6, "陆");
    unitCount.set(7, "柒");
    unitCount.set(8, "捌");
    unitCount.set(9, "玖");

    var outputData = "";

    integerData = null;
    scaleData = null;


    var decimalMatcher = inputData.match(new RegExp(/^(\d{1,16})\.(\d{0,2})$/));
    var integerMatcher = inputData.match(new RegExp(/^(\d{1,16})$/));
    if (decimalMatcher != null && decimalMatcher.length == 3) {// 小数的场合
        integerData = decimalMatcher[1];
        scaleData = decimalMatcher[2];
    } else if (integerMatcher != null && integerMatcher.length == 2) {// 整数的场合
        integerData = integerMatcher[1];
    }

    // 转换整数
    if (integerData != null && integerData != "") {
        for (var k = 0; k < integerData.length; k++) {
            var inputChar = integerData[k];
            var currentUnitCount = parseInt(inputChar);
            var currentUnit = decimalUnit.get(integerData.length - k);
            var numToChinese = null;
            if (currentUnitCount == 0) {
                numToChinese = unitCount.get(currentUnitCount);
                if (k == integerData.length - 1) {
                    numToChinese = unitCount.get(currentUnitCount) + currentUnit;
                } else if (extraUnit.includes(currentUnit)) {
                    numToChinese = currentUnit;
                }

            } else {
                numToChinese = unitCount.get(currentUnitCount) + currentUnit;
            }
            outputData = outputData + numToChinese;
        }
    }

    // 转换小数
    if (scaleData != null && scaleData != "") {
        for (var k = 0; k < scaleData.length; k++) {
            var inputChar = scaleData[k];
            var currentUnitCount = parseInt(inputChar);
            var currentUnit = decimalUnit.get(-(k + 1));
            var numToChinese = null;
            if (currentUnitCount == 0) {
                numToChinese = unitCount.get(currentUnitCount);
            } else {
                numToChinese = unitCount.get(currentUnitCount) + currentUnit;
            }
            outputData = outputData + numToChinese;
        }
    }

    // 去除重复的零
    outputData = outputData.replace(/(零{2,})/g, '');
    if (outputData != "零元") {
        // 去除零
        outputData = outputData.replace(/(零{1})/g, '');
        // 去除不合理的单位
        outputData = outputData.replace(/^(零元)/g, '');
        outputData = outputData.replace(/(亿万)/g, '亿');
        outputData = outputData.replace(/(兆亿)/g, '兆');
        outputData = outputData.replace(/^(兆)/g, '');
        outputData = outputData.replace(/^(亿)/g, '');
        outputData = outputData.replace(/^(万)/g, '');
    }
    return outputData;
}

调用方式如下:

convertNumberToChinese('1000.12')

文简介

点赞 + 关注 + 收藏 = 学会了

招教你把PDF转换为HTML,将PDF转换成HTML网页格式,是快速打造专业级网站的方法之一。由小编为大家整理的4招教你把PDF转换为HTML,4招教你把PDF转换为HTML仅供大家参考和学习。

 


4招教你把PDF转换为HTML

当用户找到了非常详实的PDF资料,打算将之制作成为网页格式时,如果重新开发 往往需要耗费大量的时间,可是又不知道怎么样才可以将PDF文件转换成HTML网页格式,此时如果能够借助PDF转换器工具来进行处理,效率将得到大幅提升。

这里重点给大家介绍一款简单易用的OCR文字识别软件:ABBYY FineReader 12,这款软件可快速、方便地将扫描纸质文档、PDF文件和数码相机的图像转换成可编辑、可搜索的文本,其中就包括HTML网页格式。

那么如何使用ABBYY FineReader 12将PDF转换成HTML呢?方法如下:

1、打开ABBYY FineReader 12,在任务首页上点击‘其他’,然后选择图像或PDF文件到HTML;

2、在打开图像对话框中选择要转换为HTML的PDF文件,点击打开;

3、打开PDF文件之后,软件会自动识别PDF文件,等待识别过程,识别完成之后会自动生成HTML页面,整个过程全自动,无需任何手动操作;

4、如果发现转换之后的HTML网页与原PDF文件有个别不一致的地方,可以返回到软件,第3步中识别之后的文档会在屏幕右侧显示,这里的文档是可以编辑的,可对照原PDF文件进行校对修改,再点击文件选项卡,在‘将文档另存为’下拉列表中选择HTML文档,保存即可。

使用ABBYY FineReader 12的好处是,整个转换过程快速自动化,无需专业知识就能获得想要的结果,是你的办公必备产品,如果你还想了解更多关于ABBYY FineReader 12这款OCR文字识别软件的内容,大家可前往那个ABBYY中文网了解相关信息。