javascript添加前置0(补零)的几种方法


Posted in Javascript onJanuary 05, 2017

前言

众所周知JavaScript中的数字是没有前置0的,因此需要我们自己进行操作来添加前置0,而且还得转换成字符串。

假如生成一个是一共是4位的有前置0的数据,通常我们能想到的方法是这样子的:

function addPreZero(num){
 if(num<10){
  return '000'+num;
 }else if(num<100){
  return '00'+num;
 }else if(num<1000){
  return '0'+num;
 }else{
  return num;
 }
}

这种方式的思路比较简单,根据当前数据的位数来补充相应个数的前置0;不过这样的算法写起来比较麻烦,如果需要的前置0非常多的话,那么得写很多的if...else。

还是基于这种思路,我们可以先算出这个数字有多少位,然后直接补上相应的0就行了:

function addPreZero(num){
 var t = (num+'').length,
  s = '';
 
 for(var i=0; i<4-t; i++){
  s += '0';
 }
 
 return s+num;
}

这种方式的实现,是根据当前num的位数,来计算出所有的前置0,然后再拼接上num。

在这个基础上,我们还可以这样考虑:比如需要一共是10位的有前置0的数据,那么首先不管当前数字是多少位的,都先补上9个前置0,然后再截取这个字符串最后的10位,那么获取到的就是需要的数据:

function addPreZero(num){
 return ('000000000'+num).slice(-10);
}

总结

以上就是这篇文章的全部内容了,实现想要的结果很多的方法,我们应该尽可能的想出更多的方法,一方面能够拓展我们的思维,另一方面也能让我们选择出更好的方式。希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

Javascript 相关文章推荐
jQuery控制TR显示隐藏的三种常用方法
Aug 21 Javascript
jquery仿百度百科底部浮动导航特效
Aug 08 Javascript
使用jQuery或者原生js实现鼠标滚动加载页面新数据
Mar 06 Javascript
使用vue.js写一个tab选项卡效果
Mar 25 Javascript
详解angularJs指令的3种绑定策略
Apr 13 Javascript
bootstrap手风琴折叠示例代码分享
May 22 Javascript
基于angular实现模拟微信小程序swiper组件
Jun 11 Javascript
微信小程序开发中的疑问解答汇总
Jul 03 Javascript
vue ssr 实现方式(学习笔记)
Jan 18 Javascript
命令行批量截图Node脚本示例代码
Jan 25 Javascript
Vue基础学习之项目整合及优化
Jun 02 Javascript
解决VueCil代理本地proxytable无效报错404的问题
Nov 07 Javascript
微信小程序 实战实例开发流程详细介绍
Jan 05 #Javascript
利用jquery禁止外层滚动条的滚动
Jan 05 #Javascript
bootstrap table配置参数例子
Jan 05 #Javascript
bootstrap table 表格中增加下拉菜单末行出现滚动条的快速解决方法
Jan 05 #Javascript
AngularJS中update两次出现$promise属性无法识别的解决方法
Jan 05 #Javascript
jQuery展示表格点击变色、全选、删除
Jan 05 #Javascript
JSON字符串和JSON对象相互转化实例详解
Jan 05 #Javascript
You might like
BBS(php &amp; mysql)完整版(一)
2006/10/09 PHP
PHP的FTP学习(二)
2006/10/09 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
2013/08/01 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
PHP实现的获取文件mimes类型工具类示例
2018/04/08 PHP
Laravel 前端资源配置教程
2019/10/18 PHP
PHP实现计算器小功能
2020/08/28 PHP
判断滚动条到底部的JS代码
2013/11/04 Javascript
关闭浏览器时提示onbeforeunload事件
2013/12/25 Javascript
Javascript类型系统之undefined和null浅析
2016/07/13 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
vue-router 权限控制的示例代码
2017/09/21 Javascript
layui之select的option叠加问题的解决方法
2018/03/08 Javascript
vuejs2.0运用原生js实现简单拖拽元素功能
2020/08/21 Javascript
vue实现条件叠加搜索的解决方法
2019/05/28 Javascript
微信公众号中的JSSDK接入及invalid signature等常见错误问题分析(全面解析)
2020/04/11 Javascript
[02:48]DOTA2英雄基础教程 暗夜魔王
2013/12/12 DOTA
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
python开发之for循环操作实例详解
2015/11/12 Python
Django数据库操作的实例(增删改查)
2017/09/04 Python
Python在for循环中更改list值的方法【推荐】
2018/08/17 Python
利用python numpy+matplotlib绘制股票k线图的方法
2019/06/26 Python
python3 selenium自动化测试 强大的CSS定位方法
2019/08/23 Python
浅析PEP570新语法: 只接受位置参数
2019/10/15 Python
python图片指定区域替换img.paste函数的使用
2020/04/09 Python
Python连接HDFS实现文件上传下载及Pandas转换文本文件到CSV操作
2020/06/06 Python
Python3爬虫中关于Ajax分析方法的总结
2020/07/10 Python
PyCharm最新激活码(2020/10/27全网最新)
2020/10/27 Python
园林技术个人的自我评价
2014/02/15 职场文书
关于青春的演讲稿三分钟
2014/08/22 职场文书
城南旧事观后感
2015/06/11 职场文书
入党后的感想
2015/08/10 职场文书
JPA如何使用entityManager执行SQL并指定返回类型
2021/06/15 Java/Android
Java9新特性对HTTP2协议支持与非阻塞HTTP API
2022/03/16 Java/Android
python使用shell脚本创建kafka连接器
2022/04/29 Python