変換量jsの機能

        関数numToCny(金){     
            VARのcnNums =新しい新しいアレイ( "ゼロ"、 "1"、 "2"、 "3"、 "市場"、 "呉"、 "土地"、 "チー"、 "スプリット"、「ナイン"); //文字のデジタル
            VAR cnIntRadice =新しいアレイ(" ""拾う""白""千"); //基本単位
            のvar cnIntUnitsは=新しいアレイ(" ""ワン""億" 「前駆体」)、整数部に対応//拡張ユニット
            のvar cnDecUnits =新しいアレイ(「角度」、「分」、「ミリモル」、「PCT」);小数部に対応//ユニット
            VAR cnInteger =「整数」; /文字が続くとき/整数値
            VAR cnIntLast =「メタ」; //後のエンド整数ユニット
            のvar MAXNUM = 999999999999999.9999; //最大のデジタル処理

            VaRのIntegerNum;量の//整数部分
            のVaR DecimalNum; //量小数部
            VaRのChineseStr =「」; //出力中国語量ストリング
            VAR部、事前定義された配列を有する分離//量

            もし(金== ""){
                リターン"";
            }

            = parseFloatはマネー(お金);
            //アラート(金)、
            IF(マネー> = MAXNUM){
                $ .alert( 'デジタル最大処理を超え');
                リターン"";
            }
            (マネー== 0){IF
                ChineseStr = cnNums [0] + + cnIntLast cnInteger;
                //document.getElementById("show").value=ChineseStr;
                ; ChineseStr戻り
            }
            マネーmoney.toString =を(); //文字列に
            ""(money.indexOf(IF )== -1){
                IntegerNum =マネー;
                DecimalNum = '';
            }他{
                パーツmoney.split =( "");
                IntegerNum =パーツ[0]。
                DecimalNum =部分[1] .SUBSTR(0、4);
            }
            IF(のparseInt(IntegerNum、10)> 0){//获取整型部分转换
                zeroCount = 0。
                IntLen = IntegerNum.length。
                用(i = 0; iはIntLen <; iは++){
                    N = IntegerNum.substr(I、1)。
                    P = IntLen -私は- 1。
                    Q = P / 4。
                    M = P%4。
                    {(nは"0" ==)場合
                        zeroCount ++。
                    }他{
                        IF(zeroCount> 0){
                            ChineseStr + = cnNums [0]。
                        }
                        ZeroCount = 0; //ゼロ
                        ChineseStr + = cnNums〔のparseInt(N)] + cnIntRadice [M];
                    }
                    (M == 0 && zeroCount <4。){IF
                        ChineseStr cnIntUnits + = [Q];
                    }
                }
                ChineseStr + cnIntLast =;
                処理//整数部
            }
            IF(DecimalNum = ''!){//小数部分
                decLen = DecimalNum.length;
                のための(I = 0;私はdecLen <; Iは++){
                    N-DecimalNum.substr =(I 、1);
                    !IF(N = '0'){
                        ChineseStr + = cnNums [数(N)] + cnDecUnits [I]。
                    }
                }
            }
            もし(ChineseStr == ''){
                ChineseStr + = cnNums [0] + cnIntLast + cnInteger。
            }そうであれば(DecimalNum == ''){
                ChineseStr + = cnInteger。
            }
            ChineseStrを返します。
        }

おすすめ

転載: blog.csdn.net/DorAction/article/details/90694400