JavaScript Date对象使用总结


Posted in Javascript onMay 14, 2009

//全局函数
Date
//Date 类的静态方法
Date.parse
Date.UTC
//Date 对象的建立方法
new Date()
new Date(毫秒数)
new Date(标准时间格式字符串)
new Date(年, 月, 日, 时, 分, 秒, 毫秒)
//Date 对象的更多方法
getFullYear (getUTCFullYear)
getMonth (getUTCMonth)
getDate (getUTCDate)
getDay (getUTCDay)
getHours (getUTCHours)
getMinutes (getUTCMinutes)
getSeconds (getUTCSeconds)
getMilliseconds (getUTCMilliseconds)
getTime
getTimezoneOffset
setFullYear (setUTCFullYear)
setMonth (setUTCMonth)
setDate (setUTCDate)
setHours (setUTCHours)
setMinutes (setUTCMinutes)
setSeconds (setUTCSeconds)
setMilliseconds (setUTCMilliseconds)
setTime
toDateString
toTimeString
toUTCString
toLocaleString
toLocaleDateString
toLocaleTimeString
toString
valueOf
--------------------------------------------------------------------------------
根据一个或多个数值建立时间对象, 及本地计时与世界标准计时的区别
--------------------------------------------------------------------------------
//先用最容易理解的方式建立一个时间对象
var d = new Date(2009, 2, 27, 12, 59, 59, 999);
alert(d); //Fri Mar 27 12:59:59 UTC+0800 2009
alert(d.toString()); //Fri Mar 27 12:59:59 UTC+0800 2009
alert(d.toUTCString()); //Fri, 27 Mar 2009 04:59:59 UTC
alert(d.toLocaleString()); //2009年3月27日 12:59:59
alert(d.toDateString()); //Fri Mar 27 2009
alert(d.toLocaleDateString()); //2009年3月27日
alert(d.toTimeString()); //12:59:59 UTC+0800
alert(d.toLocaleTimeString()); //12:59:59
/* 时间在计算机中被记为一个整数, 这是从 UTC 时间的 1970-1-1 0:0:0 到此时间的毫秒数 */
alert(d.valueOf()); //1238129999999
alert(d.getTime()); //1238129999999
/* 获取本地时间和世界标准计时的时差 */
alert(d.getTimezoneOffset()); //-480; 单位是分钟, 也就是 8 小时
/* 直接使用时间值(毫秒数, 譬如上面的: 1238129999999)建立时间对象 */
var d = new Date(1238129999999);
alert(d.toLocaleString()); //2009年3月27日 12:59:59
/* 但建立函数有 2-7 个参数时, 将是根据 "年, 月, 日, 时, 分, 秒, 毫秒" 建立时间 */
d = new Date(2009, 2, 27, 12, 59, 59, 999);
alert(d.toLocaleString()); //2009年3月27日 12:59:59
d = new Date(2009, 2, 27, 12, 59, 59);
alert(d.toLocaleString()); //2009年3月27日 12:59:59
d = new Date(2009, 2, 27, 12, 59);
alert(d.toLocaleString()); //2009年3月27日 12:59:00
d = new Date(2009, 2, 27, 12);
alert(d.toLocaleString()); //2009年3月27日 12:00:00
d = new Date(2009, 2, 27);
alert(d.toLocaleString()); //2009年3月27日 0:00:00
d = new Date(2009, 2);
alert(d.toLocaleString()); //2009年3月1日 0:00:00
/* Date 类的静态函数 UTC 的参数也是和上面一样的 2-7 个, 但 UTC 获取的是个 number */
var n = Date.UTC(2009, 0); //这只是获取了那个表示时间的毫秒数
alert(typeof n); //number
var d = new Date(n); //根据刚刚获取的数、重新建立为时间对象
alert(d.toUTCString()); //Thu, 1 Jan 2009 00:00:00 UTC
alert(d.toLocaleString()); //2009年1月1日 8:00:00
--------------------------------------------------------------------------------
无参数建立的时间对象、和用全局函数 Date 获取的时间的区别
--------------------------------------------------------------------------------
var d1 = new Date(); //返回时间对象
var d2 = Date(); //返回时间字符串
alert(d1); //Fri Feb 27 13:20:58 UTC+0800 2009
alert(d2); //Fri Feb 27 13:20:58 2009
alert(d1.valueOf()); //1235712058340
alert(d2.valueOf()); //Fri Feb 27 13:20:58 2009
alert(typeof d1); //object
alert(typeof d2); //string
//明显看出 d2 只是字符串, 它可以使用 String 类的方法, 而不能使用 Date 类的方法.
--------------------------------------------------------------------------------
使用字符串参数建立时间对象
--------------------------------------------------------------------------------
var d;
d = new Date('Fri Mar 27 12:59:59 UTC+0800 2009');
alert(d.toLocaleString()); //2009年3月27日 12:59:59
d = new Date('Fri Mar 27 12:59:59 2009');
alert(d.toLocaleString()); //2009年3月27日 12:59:59
d = new Date('Fri Mar 27 2009');
alert(d.toLocaleString()); //2009年3月27日 0:00:00
d = new Date('Mar 27 2009');
alert(d.toLocaleString()); //2009年3月27日 0:00:00
/* 可使用 Date() 返回的字符串 */
var ts = Date();
d = new Date(ts);
alert(d.toLocaleString()); //2009年3月27日 14:04:38
/* Date 类的静态函数 parse 也是需要一样的字符参数, 不过它返回的是个数字(那个毫秒数) */
var n;
n = Date.parse('Mar 27 2009');
alert(n); //1238083200000
alert(typeof n); //number
d = new Date(n);
alert(d.toLocaleString()); //2009年3月27日 0:00:00
--------------------------------------------------------------------------------
分别获取和设置: 年、月、日、时、分、秒、毫秒, 其中 "星期几" 可获取但不能设置
--------------------------------------------------------------------------------
var d = new Date(2009, 2, 27, 12, 58, 59, 999);
alert(d.toLocaleString()); //2009年3月27日 0:00:00
alert(d.getFullYear()); //2009
alert(d.getMonth()); //2 (从 0 起, 2 指 3 月)
alert(d.getDate()); //27
alert(d.getDay()); //5 (星期五)
alert(d.getHours()); //12
alert(d.getMinutes()); //58
alert(d.getSeconds()); //59
alert(d.getMilliseconds()); //999 (毫秒)
d.setFullYear(2010);
d.setMonth(1);
d.setDate(2);
d.setHours(3);
d.setMinutes(4);
d.setSeconds(5);
d.setMilliseconds(6);
alert(d.toLocaleString()); //2010年2月2日 3:04:05
alert(d.getFullYear()); //2010
alert(d.getMonth()); //1 (从 0 起, 1 指 2 月)
alert(d.getDate()); //2
alert(d.getDay()); //2 (星期二)
alert(d.getHours()); //3
alert(d.getMinutes()); //4
alert(d.getSeconds()); //5
alert(d.getMilliseconds()); //6 (毫秒)
/* 还有一个 setTime */
var d = new Date();
d.setTime(0);
alert(d.toUTCString()); //Thu, 1 Jan 1970 00:00:00 UTC

Javascript 相关文章推荐
jquery实现通用版鼠标经过淡入淡出效果
Jun 15 Javascript
jquery中ajax处理跨域的三大方式
Jan 05 Javascript
JavaScript继承学习笔记【新手必看】
May 10 Javascript
jQuery 插件封装的方法
Nov 16 Javascript
详解JavaScript 中getElementsByName在IE中的注意事项
Feb 21 Javascript
jQuery实现的简单拖动层示例
Feb 22 Javascript
jQuery插件zTree实现删除树节点的方法示例
Mar 08 Javascript
Vuejs仿网易云音乐实现听歌及搜索功能
Mar 30 Javascript
Vue.js实战之利用vue-router实现跳转页面
Apr 01 Javascript
Angular2学习教程之TemplateRef和ViewContainerRef详解
May 25 Javascript
Vue Router中应用中间件的方法
Aug 06 Javascript
关于vue-cli3打包代码后白屏的解决方案
Sep 02 Javascript
jQuery 技巧大全(新手入门篇)
May 12 #Javascript
JS 字符串连接[性能比较]
May 10 #Javascript
javascript获取当前ip的代码
May 10 #Javascript
<script defer> defer 是什么意思
May 10 #Javascript
extjs fckeditor集成代码
May 10 #Javascript
一组JS创建和操作表格的函数集合
May 07 #Javascript
给Function做的OOP扩展
May 07 #Javascript
You might like
简单谈谈PHP中的Reload操作
2016/12/12 PHP
PHP微信分享开发详解
2017/01/14 PHP
Laravel框架源码解析之模型Model原理与用法解析
2020/05/14 PHP
简明json介绍
2008/09/28 Javascript
基于jquery实现一张图片点击鼠标放大再点缩小
2013/09/29 Javascript
多选列表框动态添加,移动,删除,全选等操作的简单实例
2014/01/13 Javascript
js中直接声明一个对象的方法
2014/08/10 Javascript
jQuery控制元素显示、隐藏、切换、滑动的方法总结
2015/04/16 Javascript
JS基于面向对象实现的拖拽库实例
2015/09/24 Javascript
JS实现网页上随机产生超链接地址的方法
2015/11/09 Javascript
浏览器环境下JavaScript脚本加载与执行探析之defer与async特性
2016/01/14 Javascript
在javascript中使用com组件的简单实现方法
2016/08/17 Javascript
webpack+vue.js快速入门教程
2016/10/12 Javascript
使用原生的javascript来实现轮播图
2017/02/24 Javascript
多个上传文件用js验证文件的格式和大小的方法(推荐)
2017/03/09 Javascript
javascript+html5+css3自定义提示窗口
2017/06/21 Javascript
bootstrap-table组合表头的实现方法
2017/09/07 Javascript
EasyUI创建人员树的实例代码
2017/09/15 Javascript
解决vue项目打包上服务器显示404错误,本地没出错的问题
2020/11/03 Javascript
零基础写python爬虫之爬虫编写全记录
2014/11/06 Python
Python实现Windows和Linux之间互相传输文件(文件夹)的方法
2017/05/08 Python
详解pyinstaller生成exe的闪退问题解决方案
2020/06/19 Python
使用python求斐波那契数列中第n个数的值示例代码
2020/07/26 Python
HTML5播放实现rtmp流直播
2020/06/16 HTML / CSS
为女性购买传统的印度服装和婚纱:Kalkifashion
2019/07/22 全球购物
销售员自我评价怎么写
2013/09/19 职场文书
大学生四年生活自我鉴定
2013/11/21 职场文书
运动会广播稿30字
2014/01/21 职场文书
2014年党员个人工作总结
2014/12/02 职场文书
2014年英语教研组工作总结
2014/12/06 职场文书
个人年终总结范文
2015/03/09 职场文书
民事辩护词范文
2015/05/21 职场文书
应届生个人的求职(自荐信范文2篇)
2019/08/23 职场文书
导游词之张家界
2019/10/31 职场文书
使用python创建股票的时间序列可视化分析
2022/03/03 Python
yolov5返回坐标的方法实例
2022/03/17 Python