JavaScript格式化数字

格式化数字:小数点前每三位添加逗号,小数点后不改变

介绍两种常用的格式化数字的方法:

  • 字符串方法
  • 字符串replace+正则表达式
    	function toThousands0(item){var item0=item.toString();var dot="";if (item0.indexOf(".")!=-1) {dot=item0.slice(item0.indexOf("."));//保留小数点后的内容item0=item0.slice(0,item0.indexOf("."));}var res='';while(item0.length>3){res=","+item0.slice(-3)+res;item0=item0.slice(0,item0.length-3);}if (item0) {res=item0+res;}return res+dot;}console.log(toThousands0(22.12578));console.log(toThousands0(7777.0123));console.log(toThousands0(10));

运行结果:

		function toThousands1(num) {var item0=num.toString();var res="";var dot="";if (item0.indexOf(".")!=-1) {dot=item0.slice(item0.indexOf("."));item0=item0.slice(0,item0.indexOf("."));}res= item0.replace(/(\d)(?=(\d{3})+$)/g, "$1,");return res+dot;}console.log(toThousands1(12345678901.10));console.log(toThousands1(123.5));

运行结果:

详解:

  • toString()方法的使用:javascript中的toString()方法,主要用于Array、Boolean、Date、Error、Function、Number等对象。可以参考javascript中的toString()方法
  • 字符串方法比较请移步我的另一篇博客JavaScript字符串方法
  • 有关正则:
  1. \d表示匹配数字
  2. ()表示分组,分组一般和$1 $2...一起使用表示匹配的第一个分组第二个分组JavaScript正则表达式之分组匹配 / 反向引用
  3. 量词:{m}m次,{m,n}大于等于m小于等于n,{m,}表示大于等于m次,?={0,1},+={1,}
  4. ^开头$结尾
  5. g global全局匹配 i ignorCase忽略大小写 m mutiple允许多行匹配
  6. replace第二个参数使用$必须加引号
  7. 有关?=的含义:

(?=)和(?!);零宽正向断言和负向断言,括号内表示某个位置右边必须和=右边匹配上,或者不和!后的字符匹配。

exp1(?=exp2) 查找exp2前面的exp1

exp1(?!exp2) 查找后面不是exp2的exp1

var pattern=/str(?=ings)ing/; 
console.log("strings.a".match(pattern)); 
console.log("strings.a".match(/string(?=s)/));
console.log("string_x".match(pattern));
console.log("string_x".match(/string(?=s)/)); 

注:

  • 这里一定要用到分组()还有全局匹配g,类似一个遍历的过程。
  • 如果有负号的话,建议像处理dot一样处理一下即可。

正则表达式的另外应用:字符串前面后面去空格:

const TRIM_REGX = /(^\s+)|(\s+$)/g;//因为是去首尾空格所以一定需要^和$,注意是多个空格所以一定要用+,表示出现1次及一次以上≥1,也就是{1,}  |表示或操作符
var myres0=' ScriptOJ   '.replace(TRIM_REGX, '') // => ScriptOJ
console.log(myres0.length);

 

 

运行结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://xiahunao.cn/news/143844.html

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

ps-混合模式使用技巧

1.“叠加”制造金属字体效果:硬度0%的白色画笔,画在字体图层,混合模式选择“叠加”,选中该图层按Alt键创建蒙版(蒙版区是黑色不见白色可见)。 (ps之前,注意字体变化)&am…

ps中常见的混合模式

加深组: 减淡组: 对比组:

ps的颜色混合模式算法

先附上中英文对比 C实现 #define ChannelBlend_Normal(A,B) ((uint8)(A)) #define ChannelBlend_Lighten(A,B) ((uint8)((B > A) ? B:A)) #define ChannelBlend_Darken(A,B) ((uint8)((B > A) ? A:B)) #define ChannelBlend_Multiply(A,B) ((uint8)((A * …

photoshop色彩混合模式理论基础教程

在多年的ps使用过程中,对颜色理论的不断加深,深深熟识到颜色理论给ps设计带来的丰富多彩的变化. 但是往往我们一边欣喜的使用着基于颜色理论的图像处理软件,一边在强调色感的重要而去弱化对色彩理论的研究. 这到底是所谓的返璞归真还是舍本逐末? 不排除任何伟大的艺术家,都有…

C4D R26 渲染学习笔记 建模篇(0):建模常识

往期文章 C4D R26 渲染学习笔记(1):C4D版本选择和初始UI框介绍 C4D R26 渲染学习笔记(2):渲染流程介绍 C4D R26 渲染学习笔记(3):物体基本操作快捷键 C4D如何建模 默认…

JavaScript 压缩图片

上传图片时候,遇到要上传很大的图片,上传的时候就会很慢。所以,需要对图片进行压缩处理来优化上传功能。 图片压缩函数: /* * 图片压缩* img 原始图片* width 压缩后的宽度* height 压缩后的高度* ratio 压缩比率 */fun…

使用ImageCompressor.js进行图片格式抓换,使用compressorjs压缩图片,优化功能,压缩所有格式的图片

上一篇文章写的图片压缩功能只适用于image/jpeg和image/webp图像。vue实现图片压缩,支持多文件上传时压缩图片(只能支持jpeg)_ZMJ_QQ的博客-CSDN博客 在实际开发中常见的图片格式还有png以及ios中的heic图片格式,需要压缩所有格式的图片&…

js压缩图片到指定大小

lizuncong (lizuncong) GitHubI am a strong believer in reverse engineering. lizuncong has 42 repositories available. Follow their code on GitHub.https://github.com/lizuncong 需求:前端上传图片的时候通常需要提供指定大小以内的图片。比如不大于500KB…

前端JS实现图片质量压缩

前端JS实现图片质量压缩 用户在选择图片文件进行上传的时候是不会考虑文件的大小的,比如场景: 某用户只是想更换一下自己的用户头像,于是用自己的手机拍了一张照片,上传到应用中更换用户头像,然而现在的手机拍照功能…

掌握JS压缩图片,这一篇就够了

前言 公司的移动端业务需要在用户上传图片是由前端压缩图片大小,再上传到服务器,这样可以减少移动端上行流量,减少用户上传等待时长,优化用户体验。 插播一下,本文案例已整理成插件,已上传 npm &#xff…

实现图片前端JS压缩并上传

一、图片上传前端压缩的现实意义 对于大尺寸图片的上传,在前端进行压缩除了省流量外,最大的意义是极大的提高了用户体验。 这种体验包括两方面: 由于上传图片尺寸比较小,因此上传速度会比较快,交互会更加流畅&#…

js实现对上传图片进行压缩并且预览

js实现对上传图片的路径转成base64编码&#xff0c;并且对图片进行压缩&#xff0c;实现预览功能 需要先引入jquery: <script src"http://i.gtimg.cn/qzone/biz/gdt/lib/jquery/jquery-2.1.4.js?max_age31536000"></script> 1、html如下 <body>…

JS中通过指定大小来压缩图片

前不久王二写了一个图片处理库&#xff0c;可以指定图片质量压缩图片&#xff0c;调用的是javaScript的原生方法 toDataURL 和 toBlob&#xff0c;库里有如下这些方法&#xff1a; 但是通过质量压缩图片有一些不足之处&#xff1a;无法确定压缩后图片的大小&#xff1b; 比如下…

JavaScript前端实现压缩图片功能

JavaScript前端实现压缩图片功能 为什么要前端来压缩图片接下来看下详细步骤 为什么要前端来压缩图片 最近在做一个移动端h5上传图片的功能&#xff0c;本来这个功能并不复杂&#xff0c;只需要将图片文件通过axios传到服务端即可&#xff0c;但是考虑到现在手机设配的拍照功能…

HTML实现纯前端压缩图片

演示 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>压缩图片</title> </head> <bo…

前端js实现canvas压缩图片并上传

一. 上传前压缩图片的好处 可以减少用户的等待时间&#xff0c;提升使用体验&#xff0c;目前手机拍摄的图片文件大小一般在几 M 左右&#xff0c;文件直接上传时会有卡顿现象。可以减少服务端的存储空间。再次回去图片资源是也可以快速的加载。虽然目前阿里云的 oss 有相对应…

JS前端图片压缩上传-纯js

JS前端图片压缩上传-纯js 最近在做一个手机端的图片上传&#xff0c;写了一个比较符合自己要求的方法&#xff0c;可供参考 在做这个功能模块时&#xff0c;我遇到了以下问题&#xff0c;都花费了大量时间&#xff1a; 1. 不知道怎么压缩图片&#xff0c;&#xff08;代码和…

JS前端图片压缩上传

JS前端图片压缩上传重点知识 最近在做一个手机端的图片上传&#xff0c;写了一个比较符合自己要求的方法&#xff0c;可供参考 在做这个功能模块时&#xff0c;我遇到了以下问题&#xff0c;都花费了大量时间&#xff1a; 1. 不知道怎么压缩图片&#xff0c;&#xff08;代码…

图片纯前端JS压缩的实现

一、功能体验 先看demo&#xff1a;使用canvas在前端压缩图片并上传demo 如下截图&#xff1a; 点击文件选择框&#xff0c;我们不妨选一张尺寸比较大的图片&#xff0c;例如下面这种2M多的钓鱼收获照&#xff1a; 于是图片歘歘歘地传上去了&#xff1a; 此时我们点击最终…

JavaScript 图像压缩

JavaScript 可以使用类似于 canvas 和 web workers 来实现图像压缩。 使用 canvas&#xff0c;可以将图像绘制到 canvas 上&#xff0c;然后使用 canvas 提供的 toBlob() 或 toDataURL() 方法将其转换为不同格式的图像。在这些方法中指定图像质量参数即可实现压缩。 使用 web…