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

article/2025/9/22 6:08:42

一个经典的解决四舍五入问题后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


http://chatgpt.dhexx.cn/article/FpSsWW1L.shtml

相关文章

js中小数计算时精度问题

js中的number为双精度浮点型&#xff0c;计算时需要先进行进制转换&#xff0c;将十进制换成二进制&#xff0c;而进制转换时&#xff0c;小数就有可能出现精度问题了&#xff0c;原因如下 整数转二进制&#xff1a;除二取余法&#xff08;没有问题&#xff09; 4 除以 2 取余…

JavaScript数学运算(取整,取余和取模)

来源 | https://www.fly63.com 这篇文章主要介绍js取整、取余和取模的实现方法和它们之间的区别&#xff0c;以及Math对象的常用方法函数介绍&#xff0c;有需要的朋友可以参考下。 取整 在项目开发过程中&#xff0c;有时要对小数取整操作&#xff0c;JavaScript也提供了4种方…

JavaScript数字取整、取余总结

一、取整&#xff1a; 取整 //丢弃小数部分&#xff0c;保留整数部分 parseInt(85.5)//85向上取整 //向上取整&#xff0c;有余数或者小数&#xff0c;整数位1 Math.ceil(7/3) //3 Math.ceil(85.6) //86 Math.ceil(72.1) //73向下取整 //向下取整&#xff0c;有余数或者小数…

QuickSort 拿下!

剑指 Offer 45. 把数组排成最小的数   输入一个非负整数数组&#xff0c;把数组里所有数字拼接起来排成一个数&#xff0c;打印能拼接出的所有数字中最小的一个。 由于这一题的解题思路是&#xff1a;首先将数组转换为字符数组&#xff0c;然后根据规则对其进行排序&#xff…

经典算法之快速排序(QuickSort)

​ 活动地址&#xff1a;CSDN21天学习挑战赛 目录 快速排序算法原理图解Java代码实现 算法分析 快速排序 通过一趟排序将待排元素分成独立的两部分&#xff0c;其中一部分为比基准数小的元素&#xff0c;另一部分则是比基准数大的元素。然后对这两部分元素再按照前面的算法进行…

QuickSort(快速排序)——C语言实现

前言&#xff1a; 快速排序可真是太经典啦&#xff01;当然&#xff0c;我的复现并没有实现调用一个排序参考函数来实现对不同类型数据进行排序这一功能。 快速排序其中的一大重要思想就是分而治之&#xff0c;采取不断二分的方式进行排序&#xff0c;时间复杂度O&#xff08;n…

快速排序算法Quicksort()

快速排序的思想是用数组的首元素作为标准将A划分成前后两部分&#xff0c;比首元素小的元素构成数组的前部分&#xff0c;比首元素大的元素构成数组的后部分&#xff0c;这两部分构成两个新的子问题&#xff0c;算法接着分别对这两部分递归进行排序 伪代码&#xff1a; 输入&am…

QuickSort c++

QuickSort c 简介 算法导论 原理 from Wiki 执行顺序&#xff1a; 左侧排序完 在执行右侧 实验结果&#xff1a; C code #include"QUICKSORT.h" #pragma once #include<vector>int Partition(std::vector<int>& A, const int& p, const…

java快速排序quicksort

public class QuickSortDemo {public static void main(String[] args) {int[] arr {12,36,56,44,9,44,18};sort(arr , 0 , arr.length-1);System.out.println("排序后&#xff1a;"Arrays.toString(arr));}public static void sort(int[] arr, int left, int right…

QuickSort

一、结果显示 二、QuickSort.h #include<iostream>using namespace std;template<class T> class QuickSort { private:T a[10] {d,a,f,c,v,b,a,g,s,z};int size sizeof(a); public:QuickSort(){cout<<"size "<<size<<endl;}void…

快速排序(QuickSort)算法介绍

算法简介 快速排序&#xff08;Quicksort&#xff09;是对冒泡排序的一种改进算法。由C. A. R. Hoare在1960年提出。该算法使用广泛、效率很高&#xff0c;是最重要的排序算法之一。 该算法的实现基本可分为以下几步&#xff1a; 在数组中选一个基准数&#xff08;通常为数组…

快速排序(Quicksort)详解

引言 这篇文章是我在2015年写的&#xff0c;当时正在看算法导论中关于快排的部分&#xff0c;因此写下文章总结一下当时对快排的理解。这几天我一直在review一下我先前写的blog&#xff0c;发现有些地方写的不算太好&#xff0c;还有一些错误的地方。今天我重新修改一下这篇文…

排序——快速排序(Quick sort)

概况 快速排序&#xff08;Quick sort&#xff09;是对冒泡排序的一种改进。快速排序由C. A. R. Hoare在1960年提出。 算法思路 通过一趟排序将要排序的数据分割成独立的两部分&#xff0c;其中一部分的所有数据都比另外一部分的所有数据都要小&#xff0c;然后再按此方法对…

Visual Studio 2013 + Intel(R) Visual Fortran 安装教程

安装了好几遍&#xff0c;ivf都不能加载到vs中&#xff0c;中途放弃了vs&#xff0c;又改用codeblocks编译器&#xff0c;依然在写fortran的时候出现了各种问题&#xff0c;于是又放弃了codeblocks改回vs&#xff0c;总之是折腾了好久&#xff0c;终于装明白了ivf并且将fortran…

fortan dll在本地可以运行成功,移植到其他电脑上报错Exception in thread main java.lang.UnsatisfiedLinkError: 找不到指定的模块。

坑&#xff01;&#xff01;&#xff01;大大的坑&#xff01;&#xff01;&#xff01; 本项目需要实现java调用fortran的dll&#xff0c;我在本地编译好apae.dll&#xff0c;然后java调用dll成功&#xff01; 将apae.dll发送给对方&#xff0c;同样的java代码和fortran的dl…

Matlab2017b配置C++/C/Fortan编译器的问题(已解决)

今天在配置Matlab2017编译C代码的时候&#xff0c;一贯的调用mex -setup命令&#xff0c;结果显示没有找到任何支持的编译器或SDK。您可以安装免费的mingw-w64 c/c编译器; 崩溃&#xff01;&#xff01; 最后根据错误所给的链接在matlab2017的获取附加功能安装mingw-w64 、结…

Fortan写出数据到CSV文件中

1.输入代码 program HelloWorldopen(unit60, fileF:\Lambda3.csv)write(60,*) 4.2,5.2/sqrt(2*12550/4.1595e-11)end program HelloWorld 2.结果如下

ABAQUS6.10 VS2008 Intel fortan11.1

1.先参考微博 http://blog.sina.com.cn/s/blog_56d5b3b00100wg2y.html 2. 其它一些资料以及注意事项 IVF 11.1 可用 http://pan.baidu.com/s/1pKWPCq3 用DAEMON tools 安装IVF11.1 DAEMON是个虚拟光驱 VS2008 用英文版 ABAQUS用6.10 6.11 6.12 都安装完之后 找到Commands文件夹…

fluent加载第三方(C++,Fortan等)动态链接库

这里我介绍一种比较简单的方法&#xff0c;首先我们从ANSYS Fluent UDF Manual上随便找一段正确的UDF&#xff0c;下面这段UDF取自ANSYS 18的ANSYS Fluent UDF Manual&#xff0c;位于2.3.23.3. Example 1 - Pressure Profile / *********************************************…

Abaqus运行fortan报错:“Error in job Job-1: Problem during compilation - D:\test.for”

一、简介 最近在学习abaqus的子程序&#xff1b;学习视频为简单实例_哔哩哔哩_bilibili 模型建立后&#xff0c;所写的子程序代码如下&#xff1a; SUBROUTINE DLOAD(F,KSTEP,KINC,TIME,NOEL,NPT,LAYER,KSPT,1 COORDS,JLTYP,SNAME) CINCLUDE ABA_PARAM.INC CDIMENSION TIME(2),…