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 相关文章推荐
JavaScript XML实现两级级联下拉列表
Nov 10 Javascript
javascript使用isNaN()函数判断变量是否为数字
Sep 21 Javascript
jquery队列queue与原生模仿其实现方法分享
Mar 25 Javascript
js代码实现的加入收藏效果并兼容主流浏览器
Jun 23 Javascript
jQuery插件实现适用于移动端的地址选择器
Feb 18 Javascript
AngularJS指令与指令之间的交互功能示例
Dec 14 Javascript
easyUI下拉列表点击事件使用方法
May 18 Javascript
JS查找数组中重复元素的方法详解
Jun 14 Javascript
vue-cli 自定义指令directive 添加验证滑块示例
Oct 19 Javascript
解决vue js IOS H5focus无法自动弹出键盘的问题
Aug 30 Javascript
Vue项目数据动态过滤实践及实现思路
Sep 11 Javascript
使用FormData实现上传多个文件
Dec 04 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代码包装修正版
2008/03/15 PHP
10个实用的PHP代码片段
2011/09/02 PHP
PHP 字符串长度判断效率更高的方法
2014/03/02 PHP
PHP实现163邮箱自动发送邮件
2016/03/29 PHP
js可突破windows弹退效果代码
2008/08/09 Javascript
javascript 学习之旅 (2)
2009/02/05 Javascript
js 获取Listbox选择的值的代码
2010/04/15 Javascript
jQuery拖拽插件gridster使用指南
2015/04/21 Javascript
javascript实现tab切换的两个实例
2015/11/05 Javascript
JavaScript知识点总结(十)之this关键字
2016/05/31 Javascript
JS图片左右无缝隙滚动的实现(兼容IE,Firefox 遵循W3C标准)
2016/09/23 Javascript
AngularJS学习笔记(三)数据双向绑定的简单实例
2016/11/08 Javascript
JS基于递归算法实现1,2,3,4,5,6,7,8,9倒序放入数组中的方法
2017/01/03 Javascript
AngularJS的Filter的示例详解
2017/03/07 Javascript
Vue ElementUi同时校验多个表单(巧用new promise)
2018/06/06 Javascript
vue基于v-charts封装双向条形图的实现代码
2019/12/09 Javascript
[02:02]特效爆炸!DOTA2珍宝之瓶待你开启
2018/08/21 DOTA
用实例说明python的*args和**kwargs用法
2013/11/01 Python
Python简单进程锁代码实例
2015/04/27 Python
Python中有趣在__call__函数
2015/06/21 Python
在Python的Django框架中为代码添加注释的方法
2015/07/16 Python
详解python发送各类邮件的主要方法
2016/12/22 Python
Python Pandas 获取列匹配特定值的行的索引问题
2019/07/01 Python
tensorflow如何批量读取图片
2019/08/29 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
pycharm下pyqt4安装及环境配置的教程
2020/04/24 Python
python如何发送带有附件、正文为HTML的邮件
2021/02/27 Python
英语文学专业学生的自我评价
2013/10/31 职场文书
毕业生自荐信格式
2014/03/07 职场文书
电气工程及其自动化专业毕业生自荐信
2014/06/21 职场文书
党员贯彻十八大精神思想汇报范文
2014/10/25 职场文书
求职导师推荐信范文
2015/03/27 职场文书
安全教育培训制度
2015/08/06 职场文书
导游词之北京明十三陵
2019/10/28 职场文书
Python爬虫之爬取最新更新的小说网站
2021/05/06 Python
vue生命周期钩子函数以及触发时机
2022/04/26 Vue.js