zoukankan      html  css  js  c++  java
  • JS 日期转换,格式化等常用的函数定义

    //判断字符串是否日期格式
            function isDate(val) {
                return new Date(val) != "Invalid Date";
            }
            //日期格式化
            function formatDate2(val) {
                return formatDate(val, 'yyyy-MM-dd');
            }
            //日期格式化
            function formatDateTime(val) {
                return formatDate(val, 'yyyy-MM-dd hh:mm:ss');
            }
            //数字格式化
            function formatNumber(val) {
                if (val != '') {
                    val = val.toFixed(0);
                }
                return formatWithThousandsSeparator(val);
            }
            //数字格式化
            function formatNumber2(val) {
                if (val != '') {
                    val = val.toFixed(2);
                }
                return formatWithThousandsSeparator(val);
            }
            //数字格式化
            function formatNumber4(val) {
                if (val != '') {
                    val = val.toFixed(4);
                }
                return formatWithThousandsSeparator(val);
            }
    
    
    function formatDate(datestring, formatstring) {
        if (formatstring == undefined) {
            formatstring = 'yyyy-MM-dd';
        }
    
        if (datestring == null || datestring == '/Date(-62135596800000)/' || datestring.length <= 0) {
            return '';
        }
        else {
            var dateint = parseInt(datestring.substr(6));
            return (new Date(dateint)).format(formatstring);
        }
    }
    
    //将数字转换成带千位分隔符
    function formatWithThousandsSeparator(s) {
        if (/[^0-9.]/.test(s)) return s;
        try {
            s = String(s);
            s = s.replace(/^(d*)$/, "$1.");
            s = (s + "&end").replace(/(d*.d*)d*/, "$1");
            s = s.replace(".", ",");
            var re = /(d)(d{3},)/;
            while (re.test(s))
                s = s.replace(re, "$1,$2");
    
            s = s.replace(/,(d*)&end$/, ".$1");
    
            if (s.substring(s.length - 1, s.length) == '.')
                s = s.substring(0, s.length - 1);
        } catch (e)
                { }
        return s;
    }

    利用上面的方法,对于后台传到前台的数字类型的datetime数据,直接

    var expectedSendTime = rowData.ExpectedSendTime;
    $(cell).html(formatDate2(expectedSendTime));

    就可以得到对应的日期格式字符,很方便!

  • 相关阅读:
    js设计模式-工厂模式
    js设计模式-构造函数模式
    js设计模式-单例模式
    为什么要用事件委托and 为什么移动端click事件要设计延迟
    css属性支持
    翻译express
    无法点击,无法获取inputvalue值得原因
    cookie删除不掉的问题
    56.com面试
    angular.js phonecat翻译
  • 原文地址:https://www.cnblogs.com/itjeff/p/10082109.html
Copyright © 2011-2022 走看看