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 相关文章推荐
iframe子页面获取父页面元素的方法
Nov 05 Javascript
JavaScript获得页面base标签中url的方法
Apr 03 Javascript
深入JavaScript高级程序设计之对象、数组(栈方法,队列方法,重排序方法,迭代方法)
Dec 01 Javascript
jQuery Validate初步体验(二)
Dec 12 Javascript
javascript的正则匹配方法学习
Feb 24 Javascript
概述BootStrap中role=&quot;form&quot;及role作用角色
Dec 08 Javascript
Vue.js tab实现选项卡切换
May 16 Javascript
AngularJs+Bootstrap实现漂亮的计算器
Aug 10 Javascript
vue中SPA单页面应用程序详解
Nov 07 Javascript
jQuery设置下拉框显示与隐藏效果的方法分析
Sep 15 jQuery
js实现鼠标拖拽div左右滑动
Jan 15 Javascript
Node.js中文件系统fs模块的使用及常用接口
Mar 06 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获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
2009/10/11 PHP
php自动获取关键字的方法
2015/01/06 PHP
Json_decode 解析json字符串为NULL的解决方法(必看)
2017/02/17 PHP
使用PHP json_decode可能遇到的坑与解决方法
2017/08/03 PHP
安装docker和docker-compose实例详解
2019/07/30 PHP
javascript 在网页中的运用(asp.net)
2009/11/23 Javascript
jQuery事件绑定用法详解(附bind和live的区别)
2016/01/19 Javascript
一个简单不报错的summernote 图片上传案例
2016/07/11 Javascript
JavaScript 继承详解(六)
2016/10/11 Javascript
js仿搜狐视频记录片列表展示效果
2020/05/30 Javascript
Bootstrap datepicker日期选择器插件使用详解
2017/07/26 Javascript
引入JavaScript时alert弹出框显示中文乱码问题
2017/09/16 Javascript
vue 文件目录结构详解
2017/11/24 Javascript
JS基于设计模式中的单例模式(Singleton)实现封装对数据增删改查功能
2018/02/06 Javascript
Node.js Express安装与使用教程
2018/05/11 Javascript
使用vue开发移动端管理后台的注意事项
2019/03/07 Javascript
jQuery实现手风琴效果(蒙版)
2020/01/11 jQuery
javascript设计模式 ? 工厂模式原理与应用实例分析
2020/04/09 Javascript
Python数组条件过滤filter函数使用示例
2014/07/22 Python
Python实现的最近最少使用算法
2015/07/10 Python
Python基于Matplotlib库简单绘制折线图的方法示例
2017/08/14 Python
python程序快速缩进多行代码方法总结
2019/06/23 Python
Python进阶:生成器 懒人版本的迭代器详解
2019/06/29 Python
Python将文字转成语音并读出来的实例详解
2019/07/15 Python
对python 树状嵌套结构的实现思路详解
2019/08/09 Python
Python Web框架之Django框架文件上传功能详解
2019/08/16 Python
TensorFlow获取加载模型中的全部张量名称代码
2020/02/11 Python
日本最大的药妆连锁店:Matsukiyo松本清药妆店
2017/11/23 全球购物
电子商务系毕业生自荐信
2014/05/29 职场文书
党员教师一句话承诺
2014/05/30 职场文书
班级学雷锋活动总结
2014/06/26 职场文书
2014年协会工作总结
2014/11/22 职场文书
伊索寓言读书笔记
2015/06/30 职场文书
班主任培训研修日志
2015/11/13 职场文书
Python 线程池模块之多线程操作代码
2021/05/20 Python
PHP遍历数组的6种方式总结
2021/11/17 PHP