日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > vue >内容正文

vue

vue 数字金额转大写方法

發(fā)布時(shí)間:2023/12/14 vue 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 vue 数字金额转大写方法 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
**實(shí)現(xiàn)邏輯**億 仟 佰 拾 萬(wàn) 仟 佰 拾 元 角 分1 2 3 4 5 6 7 8 1 2 31 2 3 4 5 0 0 0 1 2 31 2 3 4 5 0 0 0 1 0 31 2 3 4 5 0 0 0 1 1 01 2 3 4 5 0 0 0 0 0 01、格式化入?yún)⑥D(zhuǎn)為字符串、去掉千分符不足兩位小數(shù)補(bǔ)零2、計(jì)算小數(shù)、整數(shù)長(zhǎng)度所有的數(shù)值對(duì)應(yīng)的漢字,進(jìn)制對(duì)應(yīng)單位3、數(shù)字轉(zhuǎn)大寫(xiě),添加進(jìn)制4、整數(shù)部分處理5、小數(shù)部分處理 <template><div><div><span>請(qǐng)輸入金額:</span><el-input placeholder="請(qǐng)輸入內(nèi)容" class="input-with-select" style="width:300px" v-model="amount"><el-button slot="append" icon="el-icon-circle-check" title="金額大寫(xiě)轉(zhuǎn)換" @click="gotoCapAmountFn"></el-button></el-input></div><div>{{capAmount|capAmountToString}}</div></div></template> <script> export default {data() {return{amount:"",capAmount:"",}},filters: {capAmountToString: function (values) {if(values === null || values === ''){return "";}values = values.toString();let reg = new RegExp(",");values = values.replace(reg, "");// 不足兩位小數(shù)補(bǔ)零let capArr = values.split(".");if (capArr.length < 2) {capArr[1] = "00";} else if (capArr[1].length == 1) {capArr[1] = capArr[1][0] + "0";}let len = capArr[0].length; //整數(shù)長(zhǎng)度let len2 = capArr[1].length; //小數(shù)長(zhǎng)度let arr = [],arr2 = [];let chin_list = ["零","壹","貳","叁","肆","伍","陸","柒","捌","玖",]; //所有的數(shù)值對(duì)應(yīng)的漢字let chin_lisp = ["仟","佰","拾","兆","仟","佰","拾","億","仟","佰","拾","萬(wàn)","仟","佰","拾",]; //進(jìn)制let chin_lisp2 = ["角", "分"]; //進(jìn)制// 數(shù)字轉(zhuǎn)大寫(xiě),添加進(jìn)制for (let i = 0; i < len; i++) {arr.push(parseInt(capArr[0][i])); //輸入的數(shù)據(jù)按下標(biāo)存進(jìn)去 存進(jìn)去的只是數(shù)字arr[i] = chin_list[arr[i]]; //是根據(jù)我們輸入的輸入的數(shù)字,對(duì)應(yīng)著我們的chin_list這個(gè)數(shù)組} for (let i = len - 1, j = 1; i > 0; i--) {//i =2 1 //倒序 為了添加進(jìn)制,方便我們?nèi)ビ^看arr.splice(i, 0, chin_lisp[chin_lisp.length - j++]); //j=2}for (let n = 0; n < len2; n++) {arr2.push(parseInt(capArr[1][n])); //輸入的數(shù)據(jù)按下標(biāo)存進(jìn)去 存進(jìn)去的只是數(shù)字arr2[n] = chin_list[arr2[n]]; //是根據(jù)我們輸入的輸入的數(shù)字,對(duì)應(yīng)著我們的chin_list這個(gè)數(shù)組}for (let i = len2, j = 1; i > 0; i--) {//i =2 1 //倒序 為了添加進(jìn)制,方便我們?nèi)ビ^看arr2.splice(i, 0, chin_lisp2[chin_lisp2.length - j++]); //j=2}arr = arr.join("");// 整數(shù)位處理if (len >= 1) {arr += "元";}//1234510001=>壹拾貳億叁仟肆佰伍拾壹萬(wàn)零壹元arr = arr.replace(/零[仟佰拾]/g, "零");//100051231 =>壹億零零零伍萬(wàn)壹仟貳佰叁拾壹arr = arr.replace(/零{2,}/g, "零");//壹億零零零伍萬(wàn)壹仟貳佰叁拾壹 =>壹億零伍萬(wàn)壹仟貳佰叁拾壹arr = arr.replace(/零([兆|億|萬(wàn)|元])/g, "$1")//12300000壹仟貳佰叁拾零萬(wàn)零元 =>壹仟貳佰叁拾萬(wàn)元 arr = arr.replace(/億零{0,3}萬(wàn)/, "億")//10000000123 =>壹佰億萬(wàn)零壹佰貳拾叁元 arr = arr.replace(/兆零{0,3}億/, "兆")//10000000000123 壹拾零兆億零壹佰貳拾叁元 =>arr = arr.replace(/^元/, "零元"); //0 ->零元// 小數(shù)位處理arr2 = arr2.join("");arr = arr + arr2;arr = arr.replace(/零角/, "零"); //11.01 壹拾壹元零角壹分 =>壹拾壹元零壹分arr = arr.replace(/零{1,2}分/, "整"); //return arr;},},methods: {gotoCapAmountFn(){this.capAmount = this.amount;} } }</script>

總結(jié)

以上是生活随笔為你收集整理的vue 数字金额转大写方法的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。