js将数字转换成万、亿、万亿

js将数字转换成万、亿、万亿

1、封装方法

src\utils\utils.ts

// js将数字转换成万、亿、万亿
export const numberFormat = (value)=> {
    var param = {};
    var k = 10000,
        sizes = ['', '万', '亿', '万亿'],
        i;
        if(value < k){
            param.value =value
            param.unit=''
        }else{
            i = Math.floor(Math.log(value) / Math.log(k)); 
            param.value = ((value / Math.pow(k, i))).toFixed(2);
            param.unit = sizes[i];
        }
    return param;
}

// js将数字转换成万 并且保留两位小数
export const keepTwoDecimalFull = (num) => {
    if (num > 10000) {
        let result = num / 10000;
        result = Math.floor(result * 100) / 100;
        var s_x = result.toString(); //将数字转换为字符串
        var pos_decimal = s_x.indexOf('.'); //小数点的索引值
        // 当整数时,pos_decimal=-1 自动补0
        if (pos_decimal < 0) {
            pos_decimal = s_x.length;
            s_x += '.';
        }
        // 当数字的长度< 小数点索引+2时,补0
        while (s_x.length <= pos_decimal + 2) {
            s_x += '0';
        }
        s_x += '万';
    } else {
        s_x = num;
    }
    return s_x
}
2、页面使用

index.vue

<template>
    <div>
      播放量:<span class="text">{{ numberFormat(playCount) }}</span>
    </div>
</template>
<script lang="ts" setup>
import { GetTopList } from '@/server/index'
import { numberFormat } from '@/utils/utils'
let playCount = ref(0)
onMounted(() => {
  // 全球榜
  GetTopList().then((res) => {
    console.log('全球榜单', res)
    playCount.value = res.song.playCount
  })
})
</script>    
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要将数字转换成颜色并转换成图片,可以使用以下步骤: 1. 将数字转换成16进制颜色代码。例如,如果数字为255,可以将其转换为#FF0000(红色)。 2. 使用JavaScript创建一个div元素,并将其背景颜色设置为步骤1中的16进制颜色代码。 3. 使用一个canvas元素,在其中创建一个图像,将div元素渲染到canvas上。 4. 使用canvas.toDataURL()方法将canvas元素转换为图像的dataURL。 5. 使用JavaScript创建一个img元素,并将其src属性设置为步骤4中的dataURL。 以下是一个简单的实现示例: ```javascript // 将数字转换为16进制颜色代码 function numberToColor(number) { var hex = number.toString(16); return "#" + "0".repeat(6 - hex.length) + hex; } // 创建一个div元素,并设置其背景颜色 var div = document.createElement("div"); div.style.backgroundColor = numberToColor(255); // 创建一个canvas元素,并将div元素渲染到其中 var canvas = document.createElement("canvas"); canvas.width = 100; canvas.height = 100; var ctx = canvas.getContext("2d"); ctx.drawImage(div, 0, 0, 100, 100); // 将canvas元素转换为dataURL,并将其设置为img元素的src属性 var img = document.createElement("img"); img.src = canvas.toDataURL(); document.body.appendChild(img); // 将img元素添加到页面中显示 ``` 这将创建一个红色的100x100像素图像。您可以根据需要更改数字和canvas大小来创建不同颜色和尺寸的图像。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值