Javascrip中对日期的解析、格式化简直是混乱不堪,各种的坑,攻城狮们多小心。
 
1. 不要用 Date("yyyy-mm-dd") 构造函数解析字符串。
  IE、firefox、safari 都不支持;
  chrome 支持 Mozilla 标准,会调用 parse() 来解析。
所以这种用法不可用于跨浏览器的生产代码。
 
2. Date.parse() 支持的格式:各浏览器实现不一样的,唯一能通用的格式是 ISO8601 标准,
即:yyyy-mm-ddThh:mm:ss 格式
 
但 chrome 下带'T'的日期串会被认为是UTC时区,在浏览器上执行时,会用浏览器时区做转换,导致错误。
 
3. Date 的 month 是从0开始的!2月的值是 1!
 
最保险的方法是用 new Date(year,month-1,seconds); 方式构造指定时间对象。
     Note that year should have 4-digits, and month starts with 0.
     The date can be created given it’s components in the current time zone.
     For this format there should be at least two first arguments, next ones are optional.
     To create a date given it’s components in UTC time zone, use static method Date.UTC()
 
 
参考
     moment.js
 
 

javascript Date 函数的坑的更多相关文章

  1. [R]R下as.Date()函数的坑

    问题描述: 在本地使用as.Date()函数从POSIXct类型中提取date时,出现了日期不一致的错误.导致处理数据时,总是出问题. 还好被领导发现数据有误,不然这个bug不知道还要潜伏多久.尽管如 ...

  2. javascript + jquery函数大全

    JAVASCRIPT Array 函数   array创建数组 concat()连接两个或更多的数组,并返回结果. join()把数组中所有元素组成字符串. pop()删除并返回数组的最后一个元素 s ...

  3. JavaScript Date对象和函数 (一)

    JavaScript_Date对象说明  Date中文为"日期"的意思,Date继承自Object对象,此对象提供操作,显示日期与时间的函数 Date对象构造函数 Date对象具有 ...

  4. JavaScript Date对象 日期获取函数

    JavaScript Date对象使用小例子: 运行结果: 总结: 1.尽管我们认为12月是第12个月份,但是JavaScript从0开始计算月份,所以月份11表示12月: 2.nowDate.set ...

  5. Javascript常用方法函数收集(二)

    Javascript常用方法函数收集(二) 31.判断是否Touch屏幕 function isTouchScreen(){ return (('ontouchstart' in window) || ...

  6. javascript工具函数

    第一部分 JavaScript工具函数 转义特殊字符为html实体   HtmlEncode: function(str){ return str.replace(/&/g, '&') ...

  7. JavaScript 常用函数总结

    javascript函数:  ·常规函数  ·数组函数  ·日期函数  ·数学函数  ·字符串函数 .cookie函数 1.常规函数 javascript常规函数包括以下9个函数:  (1)alert ...

  8. JavaScript Date 对象

    JavaScript Date 对象 Date 对象 Date 对象用于处理日期与实际. 创建 Date 对象: new Date(). 以上四种方法同样可以创建 Date 对象: var d = n ...

  9. javascript oop深入学习笔记(二)--javascript的函数

    一.概述: 函数是进行模块化程序设计的基础, javascript重的的函数不同于其他语言,每个函数都作为一个对象被维护和运行.通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或则讲函数作为参 ...

随机推荐

  1. chrome打不开12306

    chrome打不开12306怎么办?chrome怎么会打不开12306? chrome打不开12306: 1.没有安装12306网站的根证书. 2.打开https://dynamic.12306.cn ...

  2. NET开发必备工具之-LINQPad

    第一步,下载:http://www.linqpad.net/ 第二步,安装 第三步,打开LINQPad 第四步,添加链接 第五步,输入SQL Server,用户名,密码 第六步,点击OK,成功链接 第 ...

  3. iOS “请在微信客户端打开链接” UIWebview加载H5页面携带session、cookie、User-Agent信息 设置cookie、清除cookie、设置User-Agent

    公司新开的一个项目..内容基本上是加载H5页面显示..当时觉得挺简单的..后来发现自己掉坑里了..一些心理历程就不说了..说这个项目主要用到的知识点吧..也是自己踩得坑. 首先说说..这个项目上的内容 ...

  4. 查找字符对应Unicode码的十进制数字

    //将字符转换为Unicode码中字符对应十进制数字 int byte0 = 'A' & 0xff;//byte0=65 参考文档:http://baike.baidu.com/view/26 ...

  5. 【安卓面试题】Activity和Task的启动模式有哪些?每种含义是什么?举例说明各自的应用场景

    Activity和Task的启动模式有哪些?每种含义是什么?举例说明各自的应用场景 Activity的启动模式 (Launchmode) 有4种 1.standard 默认模式,不需要配置 含义: 启 ...

  6. Python练习册--PIL处理图片之加水印

    背景 最近在看到了Python 练习册,每天一个小程序 这个项目,非常有趣,也比较实用. 晚上看了这第000题,关于Python图片处理: 将你的 QQ 头像(或者微博头像)右上角加上红色的数字,类似 ...

  7. hihocoder 1082 然而沼跃鱼早就看穿了一切(字符串替换)

    时间限制:1000ms 单点时限:1000ms 内存限制:256MB 描述 fjxmlhx每天都在被沼跃鱼刷屏,因此他急切的找到了你希望你写一个程序屏蔽所有句子中的沼跃鱼(“marshtomp”,不区 ...

  8. JQ笔记

    参数形式$("input:text",document.forms[0])选择form[0]所有input=text$("<p>123</p>&q ...

  9. arcsde service(esri_sde)服务启动后又停止

    由于最近几天我们公司换了新办公楼,各种服务器得重新配置.当我试图直接将arcsde Service的服务器IP改为现在的地址,就报上面如题的错误. SQL服务器是好的,不用管它,只要确保它是开启的.只 ...

  10. MyFragment

    手机横竖屏自动切换不同的View: Landscape-Horizontal-横屏 Portrait-Vertical-竖屏 package com.example.shad_fnst.myfragm ...