js实现格式化金额,字符,时间的方法


Posted in Javascript onFebruary 26, 2015

本文实例讲述了js实现格式化金额,字符,时间的方法。分享给大家供大家参考。具体实现方法如下:

//金额转换成大写

     function toDaX(num){

        //金额大小写转换 

           if (isNaN(num) || num > Math.pow(10, 12))

                    return "";

           var cn = "零壹贰叁肆伍陆柒捌玖";

           var unit = new Array("拾佰仟", "分角");

           var unit1 = new Array("万亿", "");

           if(parseFloat(num)==0||num==''){

               return "零圆";

           }

           var numArray = num.toString().split(".");

           var start = new Array(numArray[0].length - 1, 2);

           function toChinese(num, index) {

               var num = num.replace(/\d/g, function($1) {

                    return cn.charAt($1)+ unit[index].charAt(start-- % 4 ? start % 4 : -1);

                   });

               return num;

           }

           for ( var i = 0; i < numArray.length; i++) {

                var tmp = "";

                for ( var j = 0; j * 4 < numArray[i].length; j++) {

                   var strIndex = numArray[i].length - (j + 1) * 4;

                   var str = numArray[i].substring(strIndex, strIndex + 4);

                   var start = i ? 2 : str.length - 1;

                   var tmp1 = toChinese(str, i);

                   tmp1 = tmp1.replace(/(零.)+/g, "零").replace(/零+$/, "");

                   tmp1 = tmp1.replace(/^壹拾/, "拾");

                   tmp = (tmp1 + unit1[i].charAt(j - 1)) + tmp;

                }

               numArray[i] = tmp;

           }

           numArray[1] = numArray[1] ? numArray[1] : "";

           numArray[0] = numArray[0] ? numArray[0] + "元" : numArray[0],numArray[1] = numArray[1].replace(/^零+/, "");

           numArray[1] = numArray[1].match(/分/) ? numArray[1] : numArray[1] + "整";

           return numArray[0] + numArray[1];

     }  

/** 金额格式化 添加“,”分隔符 */
function addComma(money) {

if(money==""){

return "";

}

if(money){

money = money.trim();

}

    if(/[^0-9\.\-\+]/.test(money)){   

    return money;

    } 

    money = parseFloat(money) + "";  

    if('NaN' == money){

    return  "0.00";

    }

    var money_flag = "";

    if(money.indexOf("-") != -1){

    money = money.replace(/-/g,"");

    money_flag = "-";

    }
    money=money.replace(/^(\d*)$/,"$1.");   

    money=(money+"00").replace(/(\d*\.\d\d)\d*/,"$1");   

    money=money.replace(".",",");   

    var re=/(\d)(\d{3},)/;   

    while(re.test(money)){   

      money=money.replace(re,"$1,$2");   

    }   

    money=money.replace(/,(\d\d)$/,".$1");  

    var money =  money_flag+""+money.replace(/^\./,"0.")

    return money;           

}
/** 金额格式化 去“,”分隔符 */

function delComma(value) {

  var rtnVal = value + "";

  return rtnVal.replace(/,/g,"");

}
/**

 * 金额格式化 字符串添加小数点 

 */

function addPoint(money){ 

if(/[^0-9\.]/.test(money)){   

    return money;

    }

    

    if(money.length < 3 || money.indexOf(".") > -1){ 

    return money;

    }

    

    return money.substring(0,money.length - 2) + "." + money.substring(money.length - 2,money.length);

}

/**

 * 金额格式化 数字去小数点 

 */

function removePoint(money){ 

    if(/[^0-9\.]/.test(money)){   

    return money;

    }

    

    var valueFloat = parseFloat(money) * 100;

    var valueInt = parseInt(valueFloat);

    return valueInt;

}

/* 格式化小数点后两位数字 以百分比显示 */

function addPercent(str){

    var percent = Math.floor(str * 100) / 100;

    percent=(percent.toFixed(2));

    return percent+'%';

}
/** 字符格式化 添加 空格 分隔符 */

function addSpace(value) {

if(value == null || value == ""){

return "";

}
    var value = value + "";

    var tmpStr = "";

    while (value.length > 4) {

        tmpStr = tmpStr + value.substring(0,4)+ " ";

        value = value.substring(4,value.length);

    }

    tmpStr = tmpStr + value;

    return tmpStr;

}
/** 字符格式化 去除 空格 分隔符 */

function removeSpace(value) {

var rtnVal = value + "";

  return rtnVal.replace(/ /g,"");

}
// 格式化日期时间字符串

// YYYYMMDD-》YYYY-MM-DD

// YYYYMMDDhhmmss-》YYYY-MM-DD hh:mm:ss

function formatDatetime(oldvalue){ 

if(oldvalue == null){

return "";

}else if(oldvalue.length == 8){

return oldvalue.substring(0,4) +

      "-" + oldvalue.substring(4,6) + 

      "-" + oldvalue.substring(6,8);

}else if(oldvalue.length == 14){

return oldvalue.substring(0,4) +

      "-" + oldvalue.substring(4,6) + 

      "-" + oldvalue.substring(6,8) + 

      

      " " + oldvalue.substring(8,10) + 

      ":" + oldvalue.substring(10,12) + 

      ":" + oldvalue.substring(12,14);

}else if(oldvalue.length == 6){

return oldvalue.substring(0,2) +

      ":" + oldvalue.substring(2,4) + 

      ":" + oldvalue.substring(4,6);

}else{

return oldvalue;

}

}
function StringToDate(str){

var datainfo=str.split('-');

    return new Date(datainfo[0],datainfo[1],datainfo[2]);

}

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
js表数据排序 sort table data
Feb 18 Javascript
JavaScript 上万关键字瞬间匹配实现代码
Jul 07 Javascript
JS分页控件 可用于无刷新分页
Jul 23 Javascript
浅谈checkbox的一些操作(实战经验)
Nov 20 Javascript
jQuery 获取屏幕高度、宽度的简单实现案例
May 17 Javascript
基于CSS3和jQuery实现跟随鼠标方位的Hover特效
Jul 25 Javascript
基于vue-cli 打包时抽离项目相关配置文件详解
Mar 07 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
Jun 10 Javascript
js正则表达式校验指定字符串的方法
Jul 23 Javascript
this.$toast() 了解一下?
Apr 18 Javascript
Layui数据表格之单元格编辑方式
Oct 26 Javascript
javascript实现简单留言板案例
Feb 09 Javascript
如何减少浏览器的reflow和repaint
Feb 26 #Javascript
详谈javascript中DOM的基本属性
Feb 26 #Javascript
jqueryUI里拖拽排序示例分析
Feb 26 #Javascript
Jquery的基本对象转换和文档加载用法实例
Feb 25 #Javascript
jQuery操作JSON的CRUD用法实例
Feb 25 #Javascript
javascript实现复选框超过限制即弹出警告框的方法
Feb 25 #Javascript
javascript获得当前的信息的一些常用命令
Feb 25 #Javascript
You might like
PHP实现浏览器中直接输出图片的方法示例
2018/03/14 PHP
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
2009/05/21 Javascript
javascript void(0)的妙用
2009/10/21 Javascript
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
2011/05/28 Javascript
JS限制上传图片大小不使用控件在本地实现
2012/12/19 Javascript
js实现遮罩层弹出框的方法
2015/01/15 Javascript
jQuery实现冻结表格行和列
2015/04/29 Javascript
jQuery层动画定位滑动效果的方法
2015/04/30 Javascript
Node.js编程中客户端Session的使用详解
2015/06/23 Javascript
js跨域请求的5中解决方式
2015/07/02 Javascript
JS实现光滑展开合拢的菜单效果代码
2015/09/16 Javascript
详解js的事件代理(委托)
2016/12/22 Javascript
常见的浏览器Hack技巧整理
2017/06/29 Javascript
js实现图片旋转 js滚动鼠标中间对图片放大缩小
2017/07/05 Javascript
js 显示日期时间的实例(时间过一秒加1)
2017/10/25 Javascript
浅谈Vue SSR 的 Cookies 问题
2017/11/20 Javascript
redux中间件之redux-thunk的具体使用
2018/04/17 Javascript
JavaScript 对引擎、运行时、调用堆栈的概述理解
2018/10/22 Javascript
vue实现图片预览组件封装与使用
2019/07/13 Javascript
VUE解决 v-html不能触发点击事件的问题
2019/10/28 Javascript
vue-socket.io接收不到数据问题的解决方法
2020/05/13 Javascript
npm ci命令的基本使用方法
2020/09/20 Javascript
[46:00]Ti4 冒泡赛第二轮LGD vs C9 2
2014/07/14 DOTA
Python内置函数的用法实例教程
2014/09/08 Python
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
python 写入csv乱码问题解决方法
2016/10/23 Python
Python运算符重载详解及实例代码
2017/03/07 Python
django列表筛选功能的实现代码
2020/03/27 Python
css3实现垂直下拉动画菜单示例
2014/04/22 HTML / CSS
幼儿园教师备课制度
2014/01/12 职场文书
护士毕业实习感言
2014/03/05 职场文书
招标承诺书
2014/08/30 职场文书
2014年教师节座谈会发言稿
2014/09/10 职场文书
初级党校心得体会
2014/09/11 职场文书
西安大雁塔导游词
2015/02/10 职场文书
《牧场之国》教学反思
2016/02/22 职场文书