js关于时间的格式问题

我们在js中的时间格式一般有

2014-09-09

2014-9-9

2014/09/09

2014/9/9

这几种显示显示中只有第二种有问题

var date =new Date("2014-9-9“)

这种方式是有问题的,行不通

一般的情况就是将”-“替换成”/”

下面代码:

 <script type="text/javascript" >
        String.prototype.Trim = function () {
            return this.replace(/(^\s*)|(\s*$)/g, "");
        }
        //是否是正确的长日期
        String.prototype.isLongDate = function () {
            var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2}):(\d{1,2}):(\d{1,2})$/);
            if (r == null) {
                return false;
            }
            var d = new Date(r[1], r[3] - 1, r[4], r[5], r[6], r[7]);
            return (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3] && d.getDate() == r[4] && d.getHours() == r[5] && d.getMinutes() == r[6] && d.getSeconds() == r[7]);
        }
        //是否是正确的短日期
        String.prototype.isShortDate = function () {
            var r = this.replace(/(^\s*)|(\s*$)/g, "").match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/);
            if (r == null) {
                return false;
            }
            var d = new Date(r[1], r[3] - 1, r[4]);
            return (d.getFullYear() == r[1] && (d.getMonth() + 1) == r[3] && d.getDate() == r[4]);
        }
        //是否是正确的日期
        String.prototype.isDate = function () {
            return this.isLongDate() || this.isShortDate();
        }
        function valid() {
            var id = document.getElementById("<%=txtOrderID.ClientID %>").value;
            var beginTime = document.getElementById("<%=txtBeginTime.ClientID %>").value;
            var endTime = document.getElementById("<%=txtEndTime.ClientID %>").value;
            id = id.Trim();
            beginTime = beginTime.Trim();
            endTime = endTime.Trim();
            if (id == "") {
//                if (isNaN(id)) {
//                    alert("请输入合适的订单号");return false;
                //                }
                if (!beginTime.isDate()) {
                    alert("请输入合适的开始时间!");return false;
                }
                if (!endTime.isDate()) {
                    alert("请输入合适的结束时间!"); return false;
                }
                beginTime = beginTime.replace(/-/gi, "/");
                endTime = endTime.replace(/-/gi, "/");
                var begin = new Date(beginTime);
                var end = new Date(endTime);
                if (begin > end) {
                    alert("开始时间不能大于结束时间!"); return false;
                }
                begin.setDate(begin.getDate() + 7);
                if (begin < end) {
                    alert("时间跨度不能超过一周!"); return false;
                }
            }
        }
    </script>
时间: 2024-10-19 08:49:59

js关于时间的格式问题的相关文章

js判断时间格式是否正确代码

js判断时间格式是否正确代码: 如果要求比较严格的话,时间格式也是需要进行判断的,下面就是一段这样的代码实例,希望能够给需要的朋友带来一定的帮助. 代码实例如下: function isDateString(strDate) { var strSeparator = "-"; var strDateArray; var intYear; var intMonth; var intDay; var boolLeapYear; var ErrorMsg = ""; st

js获取当前时间,格式YYYY-MM-DD

//获取当前时间,格式YYYY-MM-DD function getNowFormatDate() { var date = new Date(); var seperator1 = "-"; var year = date.getFullYear(); var month = date.getMonth() + 1; var strDate = date.getDate(); if (month >= 1 && month <= 9) { month =

js对时间所有的操作类和代码

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 8

js获取时间

Js获取当前日期时间及其它操作 var myDate = new Date();myDate.getYear();        //获取当前年份(2位)myDate.getFullYear();    //获取完整的年份(4位,1970-????)myDate.getMonth();       //获取当前月份(0-11,0代表1月)myDate.getDate();        //获取当前日(1-31)myDate.getDay();         //获取当前星期X(0-6,0代表

js 时间戳转为日期格式

js 时间戳转为日期格式 什么是Unix时间戳(Unix timestamp): Unix时间戳(Unix timestamp),或称Unix时间(Unix time).POSIX时间(POSIX time),是一种时间表示方式,定义为从格林威治时间1970年01月01日00时00分00秒起至现在的总秒数.Unix时间戳不仅被使用在Unix系统.类Unix系统中,也在许多其他操作系统中被广泛采用. 目前相当一部分操作系统使用32位二进制数字表示时间.此类系统的Unix时间戳最多可以使用到格林威治

js转换Date日期格式

有时候做项目会用到js的date日期格式,因为Date()返回的格式不是我们需要的, Date()返回格式: Thu Mar 19 2015 12:00:00 GMT+0800 (中国标准时间) 而我们则需要这样的格式: 2015-3-19 12:00:00 除非是在后台处理好时间格式,然后在页面直接显示. 那如何用js格式化date日期值呢? 1.js方法返回值:2015-03-19 var formatDate = function (date) { var y = date.getFull

JSON(二)——JavaScript中js对象与JSON格式字符串的相互转换

首先我们来看一下js中JSON格式的字符串 var JSONStr1 = "{\"name\" : \"张三\"}"; 注意以下的写法不是js中JSON格式的字符串,它只是一个js的字符串. var JSONStr2 = "{'name' : '张三'}"; 我们看JSON语法中对于字符串的定义:是由双引号包围的任意数量Unicode字符的集合,使用反斜线转义.一个字符(character)即一个单独的字符串(characte

JS日期时间选择器

本文介绍一种日期和时间选择器的用法.此选择器由jqueryUI实现,支持精确到毫秒的时间选择. 此选择器项目地址为http://trentrichardson.com/examples/timepicker/ Demo地址为:http://www.helloweba.com/demo/timepicker/ 下载地址:http://download.csdn.net/detail/yanwushu/7721933 效果图 另外关于js时间选择器还可以参考其他项目 http://www.bootc

js的时间操作方法

var myDate = new Date();myDate.getYear();        //获取当前年份(2位)myDate.getFullYear();    //获取完整的年份(4位,1970-????)myDate.getMonth();       //获取当前月份(0-11,0代表1月)myDate.getDate();        //获取当前日(1-31)myDate.getDay();         //获取当前星期X(0-6,0代表星期天)myDate.getTi