前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >千分位的写法_千分位格式

千分位的写法_千分位格式

作者头像
全栈程序员站长
发布2022-09-21 18:55:37
9450
发布2022-09-21 18:55:37
举报

大家好,又见面了,我是你们的朋友全栈君。

之前看到一道面试题,要求使用js写千分位,当时面试时有点懵逼,但是后来参考网上的写法与自己的思考,写出了千分位。

以下是通过网上的代码,本人进行了进一步优化后的代码,仅供参考。

相比较与网上的方法,我的方法实现了能对小数也进行处理的功能,不会出现如果数字是小数,分割千分位就是出错的问题。

首先在开始的时候对数字做处理,使用split方法将转化为string类型的字符串在“.”位处分割开,然后装进数组中

然后将前半部分(整数部分)反转过来

使用循环判断长度,三位长度就增加一个逗号。

再将其转化为数字并在此反转

这时候要判断之前的数是否为整数,如果不是整数,就将arr【1】(小数部分)加在后面即可。

在控制台打印出最后的成果。

当然,不能忘记要有返回值,所以return是必须的。

代码语言:javascript
复制
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title>千分位</title> </head> <body> </body> <script type="text/javascript"> function parseNum(number){ var arr = String(number).split("."); //定义一个数组,将要分割的数组转为字符串并判断时候为整数,小数位使用split在小数点处分割开 var list = arr[0].split('').reverse(); //定义list来装分割出的整数部分,并转化为数组,使用reverse方法将其反转 for(var i = 0; i < list.length; i++){ //定义变量,判断list的长度 if(i % 4 == 3){ //当长度为三位时,使用splice方法增加逗号。splice(位置,0(增加),增加的东西)  list.splice(i, 0, ','); } } list = list.reverse().join(''); // 将list在反转过来并使用join的方法将其变为数字 if(arr[1] !== undefined){ //当小数位不为undefined值时(有小数)  list = list + '.' + arr[1]; } return list; } console.log(parseNum(1234567890.111)); </script> </html>

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/167688.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档