久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

    <i id='EGtFF'><tr id='EGtFF'><dt id='EGtFF'><q id='EGtFF'><span id='EGtFF'><b id='EGtFF'><form id='EGtFF'><ins id='EGtFF'></ins><ul id='EGtFF'></ul><sub id='EGtFF'></sub></form><legend id='EGtFF'></legend><bdo id='EGtFF'><pre id='EGtFF'><center id='EGtFF'></center></pre></bdo></b><th id='EGtFF'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='EGtFF'><tfoot id='EGtFF'></tfoot><dl id='EGtFF'><fieldset id='EGtFF'></fieldset></dl></div>

  1. <tfoot id='EGtFF'></tfoot>

        <bdo id='EGtFF'></bdo><ul id='EGtFF'></ul>

    1. <small id='EGtFF'></small><noframes id='EGtFF'>

      <legend id='EGtFF'><style id='EGtFF'><dir id='EGtFF'><q id='EGtFF'></q></dir></style></legend>
    2. 將數字轉換為十萬/千萬系統中的單詞

      Transform numbers to words in lakh / crore system(將數字轉換為十萬/千萬系統中的單詞)

        <legend id='RyDEr'><style id='RyDEr'><dir id='RyDEr'><q id='RyDEr'></q></dir></style></legend>

            <tbody id='RyDEr'></tbody>
          • <bdo id='RyDEr'></bdo><ul id='RyDEr'></ul>

              <small id='RyDEr'></small><noframes id='RyDEr'>

              <tfoot id='RyDEr'></tfoot>

                <i id='RyDEr'><tr id='RyDEr'><dt id='RyDEr'><q id='RyDEr'><span id='RyDEr'><b id='RyDEr'><form id='RyDEr'><ins id='RyDEr'></ins><ul id='RyDEr'></ul><sub id='RyDEr'></sub></form><legend id='RyDEr'></legend><bdo id='RyDEr'><pre id='RyDEr'><center id='RyDEr'></center></pre></bdo></b><th id='RyDEr'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='RyDEr'><tfoot id='RyDEr'></tfoot><dl id='RyDEr'><fieldset id='RyDEr'></fieldset></dl></div>
                本文介紹了將數字轉換為十萬/千萬系統中的單詞的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

                問題描述

                我正在編寫一些將給定數字轉換為單詞的代碼,這是我在谷歌搜索后得到的.但我認為這樣一個簡單的任務有點太長了.兩個正則表達式和兩個 for 循環,我想要更簡單的.

                I'm writing some code that converts a given number into words, here's what I have got after googling. But I think it's a bit too long for such a simple task. Two Regular Expressions and two for loops, I want something simpler.

                我試圖用盡可能少的代碼行來實現這一點.到目前為止,這是我想出的:

                I am trying to achieve this in as few lines of code as possible. here's what I've come up with so far:

                有什么建議嗎?

                var th = ['','thousand','million', 'billion','trillion'];
                var dg = ['zero','one','two','three','four', 'five','six','seven','eight','nine'];
                 var tn = ['ten','eleven','twelve','thirteen', 'fourteen','fifteen','sixteen', 'seventeen','eighteen','nineteen'];
                 var tw = ['twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety'];
                 
                function toWords(s) {
                    s = s.toString();
                    s = s.replace(/[, ]/g,'');
                    if (s != parseFloat(s)) return 'not a number';
                    var x = s.indexOf('.');
                    if (x == -1)
                        x = s.length;
                    if (x > 15)
                        return 'too big';
                    var n = s.split(''); 
                    var str = '';
                    var sk = 0;
                    for (var i=0;   i < x;  i++) {
                        if ((x-i)%3==2) { 
                            if (n[i] == '1') {
                                str += tn[Number(n[i+1])] + ' ';
                                i++;
                                sk=1;
                            } else if (n[i]!=0) {
                                str += tw[n[i]-2] + ' ';
                                sk=1;
                            }
                        } else if (n[i]!=0) { // 0235
                            str += dg[n[i]] +' ';
                            if ((x-i)%3==0) str += 'hundred ';
                            sk=1;
                        }
                        if ((x-i)%3==1) {
                            if (sk)
                                str += th[(x-i-1)/3] + ' ';
                            sk=0;
                        }
                    }
                    
                    if (x != s.length) {
                        var y = s.length;
                        str += 'point ';
                        for (var i=x+1; i<y; i++)
                            str += dg[n[i]] +' ';
                    }
                    return str.replace(/s+/g,' ');
                }
                

                另外,上面的代碼轉換成英文編號系統,例如 Million/Billion,我需要南亞編號系統,例如 Lakhs 和 Crores.

                Also, the above code converts to the English numbering system like Million/Billion, I need the South Asian numbering system, like in Lakhs and Crores.

                推薦答案

                更新:看起來這比我想象的更有用.我剛剛在 npm 上發布了這個.https://www.npmjs.com/package/num-words

                Update: Looks like this is more useful than I thought. I've just published this on npm. https://www.npmjs.com/package/num-words

                這是一個較短的代碼.一個正則表達式,沒有循環.在南亞編號系統中隨心所欲地轉換

                Here's a shorter code. with one RegEx and no loops. converts as you wanted, in south asian numbering system

                var a = ['','one ','two ','three ','four ', 'five ','six ','seven ','eight ','nine ','ten ','eleven ','twelve ','thirteen ','fourteen ','fifteen ','sixteen ','seventeen ','eighteen ','nineteen '];
                var b = ['', '', 'twenty','thirty','forty','fifty', 'sixty','seventy','eighty','ninety'];
                
                function inWords (num) {
                    if ((num = num.toString()).length > 9) return 'overflow';
                    n = ('000000000' + num).substr(-9).match(/^(d{2})(d{2})(d{2})(d{1})(d{2})$/);
                    if (!n) return; var str = '';
                    str += (n[1] != 0) ? (a[Number(n[1])] || b[n[1][0]] + ' ' + a[n[1][1]]) + 'crore ' : '';
                    str += (n[2] != 0) ? (a[Number(n[2])] || b[n[2][0]] + ' ' + a[n[2][1]]) + 'lakh ' : '';
                    str += (n[3] != 0) ? (a[Number(n[3])] || b[n[3][0]] + ' ' + a[n[3][1]]) + 'thousand ' : '';
                    str += (n[4] != 0) ? (a[Number(n[4])] || b[n[4][0]] + ' ' + a[n[4][1]]) + 'hundred ' : '';
                    str += (n[5] != 0) ? ((str != '') ? 'and ' : '') + (a[Number(n[5])] || b[n[5][0]] + ' ' + a[n[5][1]]) + 'only ' : '';
                    return str;
                }
                
                document.getElementById('number').onkeyup = function () {
                    document.getElementById('words').innerHTML = inWords(document.getElementById('number').value);
                };

                <span id="words"></span>
                <input id="number" type="text" />

                唯一的限制是,您最多可以轉換 9 位數字,我認為這在大多數情況下已經足夠了..

                The only limitation is, you can convert maximum of 9 digits, which I think is more than sufficient in most cases..

                這篇關于將數字轉換為十萬/千萬系統中的單詞的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

                【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

                相關文檔推薦

                Browser waits for ajax call to complete even after abort has been called (jQuery)(即使在調用 abort (jQuery) 之后,瀏覽器也會等待 ajax 調用完成)
                JavaScript innerHTML is not working for IE?(JavaScript innerHTML 不適用于 IE?)
                XMLHttpRequest cannot load, No #39;Access-Control-Allow-Origin#39; header is present on the requested resource(XMLHttpRequest 無法加載,請求的資源上不存在“Access-Control-Allow-Origin標頭) - IT屋-程序員軟件開發技術分
                Is it possible for XHR HEAD requests to not follow redirects (301 302)(XHR HEAD 請求是否有可能不遵循重定向 (301 302))
                NETWORK_ERROR: XMLHttpRequest Exception 101(NETWORK_ERROR:XMLHttpRequest 異常 101)
                XMLHttpRequest 206 Partial Content(XMLHttpRequest 206 部分內容)

                  <small id='v9M3k'></small><noframes id='v9M3k'>

                  <i id='v9M3k'><tr id='v9M3k'><dt id='v9M3k'><q id='v9M3k'><span id='v9M3k'><b id='v9M3k'><form id='v9M3k'><ins id='v9M3k'></ins><ul id='v9M3k'></ul><sub id='v9M3k'></sub></form><legend id='v9M3k'></legend><bdo id='v9M3k'><pre id='v9M3k'><center id='v9M3k'></center></pre></bdo></b><th id='v9M3k'></th></span></q></dt></tr></i><div class="qwawimqqmiuu" id='v9M3k'><tfoot id='v9M3k'></tfoot><dl id='v9M3k'><fieldset id='v9M3k'></fieldset></dl></div>

                      <tbody id='v9M3k'></tbody>

                    <legend id='v9M3k'><style id='v9M3k'><dir id='v9M3k'><q id='v9M3k'></q></dir></style></legend>
                  • <tfoot id='v9M3k'></tfoot>

                        <bdo id='v9M3k'></bdo><ul id='v9M3k'></ul>
                          主站蜘蛛池模板: 97国产精品视频人人做人人爱 | 国产在线一区二区三区 | 国产精品伦理一区二区三区 | 亚洲精品丝袜日韩 | 午夜视频一区二区 | 国产高清免费视频 | 日操夜操| jav成人av免费播放 | 欧美日韩精品一区二区三区视频 | a级在线 | 综合二区| 天天操天天射天天 | 成人免费大片黄在线播放 | 国产在线中文字幕 | 毛片一级片 | 国产精品视频在线播放 | 欧美亚洲国产一区二区三区 | 成人深夜福利网站 | 成人免费大片黄在线播放 | av黄色国产 | 色av一区二区三区 | 国产成人精品免费视频 | 人人99 | 手机av免费在线 | 国产欧美日韩一区 | 久草欧美 | 日本精a在线观看 | 成人啊啊啊| 精品视频99 | 欧美日韩电影一区二区 | 精品国产一区二区三区久久久四川 | 精品1区2区| 中文字幕精品一区 | 国产福利视频在线观看 | 亚洲欧美日韩精品久久亚洲区 | 久久久精品影院 | 99re视频在线观看 | 国精日本亚洲欧州国产中文久久 | 国内精品久久久久久久影视简单 | 全部免费毛片在线播放网站 | 日韩中文字幕在线视频 |