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 相关文章推荐
数组Array进行原型prototype扩展后带来的for in遍历问题
Feb 07 Javascript
javascript getElementsByClassName函数
Apr 01 Javascript
文本框中,回车键触发事件的js代码[多浏览器兼容]
Jun 07 Javascript
js函数获取html中className所在的内容并去除标签
Sep 08 Javascript
对 jQuery 中 data 方法的误解分析
Jun 18 Javascript
使用window.prompt()实现弹出用户输入的对话框
Apr 13 Javascript
jQuery中的Deferred和promise 的区别
Apr 03 Javascript
原生JS实现图片翻书效果
Feb 16 Javascript
利用jQuery实现简单的拖曳效果实例代码
Oct 20 jQuery
浅谈在react中如何实现扫码枪输入
Jul 04 Javascript
Angular8引入百度Echarts进行图表分析的实现代码
Nov 27 Javascript
详解ES6实现类的私有变量的几种写法
Feb 10 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
360通用php防护代码(使用操作详解)
2013/06/18 PHP
php自定文件保存session的方法
2014/12/10 PHP
Laravel 5框架学习之路由、控制器和视图简介
2015/04/07 PHP
PHP实现小程序批量通知推送
2018/11/27 PHP
什么是json和jsonp,jQuery json实例详详细说明
2012/12/11 Javascript
js限制文本框输入长度两种限制方式(长度、字节数)
2012/12/19 Javascript
jquery属性过滤选择器使用示例
2013/06/18 Javascript
json数据的列循环示例
2013/09/06 Javascript
php中给js数组赋值方法
2014/03/10 Javascript
jQuery弹出框代码封装DialogHelper
2015/01/30 Javascript
kindeditor修复会替换script内容的问题
2015/04/03 Javascript
jQuery页面加载初始化的3种方法(推荐)
2016/06/02 Javascript
node.js cookie-parser之parser.js
2016/06/06 Javascript
详解Vue监听数据变化原理
2017/03/08 Javascript
vuex的使用及持久化state的方式详解
2018/01/23 Javascript
vue集成百度UEditor富文本编辑器使用教程
2018/09/21 Javascript
浅谈angular2子组件的事件传递(任意组件事件传递)
2018/09/30 Javascript
基于iview的router常用控制方式
2019/05/30 Javascript
了解Javascript中函数作为对象的魅力
2019/06/19 Javascript
JS自定义对象创建与简单使用方法示例
2020/01/15 Javascript
详解三种方式在React中解决绑定this的作用域问题并传参
2020/08/18 Javascript
js前端对于大量数据的展示方式及处理方法
2020/12/02 Javascript
python运行其他程序的实现方法
2017/07/14 Python
Python中创建二维数组
2018/10/17 Python
阿里云ECS服务器部署django的方法
2019/08/29 Python
使用IPython或Spyder将省略号表示的内容完整输出
2020/04/20 Python
欧缇丽美国官网:Caudalie美国
2016/12/31 全球购物
奥地利汽车配件店:Pkwteile.at
2017/03/10 全球购物
Spartoo瑞典:鞋子、包包和衣服
2018/09/15 全球购物
关于迟到的检讨书
2014/01/26 职场文书
同学聚会老师邀请函
2014/01/28 职场文书
《太阳》教学反思
2014/02/21 职场文书
名企HR怎样看待求职信
2014/02/23 职场文书
《诚实与信任》教学反思
2014/04/10 职场文书
党支部三会一课计划
2014/09/24 职场文书
工作失职自我检讨书
2015/05/05 职场文书