js数据取整,取余,保留小数,数据脱敏等的一些处理方式

一个经典的解决四舍五入问题后js保留两位小数的方法:

1.四舍五入保留2位小数(若第二位小数为0,则保留一位小数)

function keepTwoDecimal(num) {
 var result = parseFloat(num);
 if (isNaN(result)) {
 alert('传递参数错误,请检查!');
 return false;
 }
 result = Math.round(num * 100) / 100;
 return result;
}

2.四舍五入保留2位小数(不够位数,则用0替补)

function keepTwoDecimalFull(num) {
 var result = parseFloat(num);
 if (isNaN(result)) {
 alert('传递参数错误,请检查!');
 return false;
 }
 result = Math.round(num * 100) / 100;
 var s_x = result.toString();
 var pos_decimal = s_x.indexOf('.');
 if (pos_decimal < 0) {
 pos_decimal = s_x.length;
 s_x += '.';
 }
 while (s_x.length <= pos_decimal + 2) {
 s_x += '0';
 }
 return s_x;
}

js保留两位小数,自动补充零

function returnFloat(value){
 var value=Math.round(parseFloat(value)*100)/100;
 var xsd=value.toString().split(".");
 if(xsd.length==1){
 value=value.toString()+".00";
 return value;
 }
 if(xsd.length>1){
 if(xsd[1].length<2){
 value=value.toString()+"0";
 }
 return value;
 }
}

正则表达式效果不错

<script type="text/javascript">
onload = function(){
 var a = "23.456322";
 var aNew;
 var re = /([0-9]+.[0-9]{2})[0-9]*/;
 aNew = a.replace(re,"$1");
 alert(aNew);
}
</script>

最笨的但是也最安全和万能的办法

function get()
{
 var s = 22.127456 + "";
 var str = s.substring(0,s.indexOf(".") + 3);
 alert(str);
}

用Javascript取float型小数点后两位,例22.127456取成22.13,如何做?以下方法为通用方法

1.丢弃小数部分,保留整数部分

parseInt(5/2)

2.向上取整,有小数就整数部分加1

Math.ceil(5/2)

3,四舍五入.

Math.round(5/2)

4,向下取整

Math.floor(5/2)

5.取余

 5%2//1

一些身份证件之类的中间一些数据的脱敏处理

在这里插入图片描述
dataTuomin(str) {
if(typeof str == ‘string’){ //参数为字符串类型
var len=str.length;
let ruten = str.substring(6); //提取字符串下标之间的字符。
return str.replace(ruten,’**’)+str.substring(len - 4, len); //字符串中用字符替换另外字符,或替换一个与正则表达式匹配的子串。
}
},
一些名字之类的脱敏处理

substring(str){
   if(typeof str == 'string'){ //参数为字符串类型
        let ruten = str.substring(1); //提取字符串下标之间的字符。
        return str.replace(ruten,'**'); //字符串中用字符替换另外字符,或替换一个与正则表达式匹配的子串。
   }
}

文章一多半转载自https://www.jb51.net/article/134067.htm

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值