1.日期对象常用方法
1.第一种创建Date对象的方式
console.log('构造函数 - 第一种:基本 当前时间')
date = new Date(); //返回时间对象 以调用getDate(),内容为当前时间
console.log(date); //Thu Sep 24 2015 14:01:53 GMT+0800 (中国标准时间)
date = Date(); //返回时间字符串 没有getDate等日期对象方法,内容为当前时间
console.log(date); //Thu Sep 24 2015 14:01:53 GMT+0800 (中国标准时间)
date = +new Date(); //返回时间毫秒数字
console.log(date);
//一个静态方法 返回当前时间与1970-01-01的时间间隔,毫秒单位
console.log('静态方法')
console.log(Date.now()); //1443085759316
2.第二种创建Date对象的方式
console.log('构造函数 - 第二种 - 传递毫秒值')
//距离起始时间1970年1月1日的毫秒数
date = new Date(1238129999999);
console.log(date.toLocaleString()); //2015年3月27日 12:59:59
3.第三种创建Date对象的方式
console.log('构造函数 - 第三种 - 传递零散的年月日时间等日期时间参数')
/* 分散的时间数值型构造函数 - 构造函数有 2-7 个参数时,
将是根据 "年, 月, 日, 时, 分, 秒, 毫秒" 建立时间 */
date = new Date(2015, 2, 27, 12, 59, 59);
console.log(date.toLocaleString()); //2015年3月27日 12:59:59
date = new Date(2015, 2, 27, 12, 59);
console.log(date.toLocaleString()); //2015年3月27日 12:59:00
date = new Date(2015, 2, 27, 12);
console.log(date.toLocaleString()); //2015年3月27日 12:00:00
date = new Date(2015, 2, 27);
console.log(date.toLocaleString()); //2015年3月27日 0:00:00
date = new Date(2015, 2);
console.log(date.toLocaleString()); //2015年3月1日 0:00:00
4.第四种方式创建Date对象
date = new Date('2014/12/25'); // yyyy/MM/dd格式
console.log(date); //2014/12/25 00:00:00
date = new Date('2014/12/25 12:00:00'); // yyyy/MM/dd HH:mm:ss格式
console.log(date); //2014/12/25 12:00:00
date = new Date('2014-12-25'); // yyyy-MM-dd格式
console.log(date); // 2014-12-25 08:00:00
date = new Date('2014-12-25 12:00:00'); // yyyy-MM-dd HH:mm:ss
console.log(date); // 2014-12-25 12:00:00
date = new Date("December 31, 2015 23:59:59"); //month dd,yyyy hh:mm:ss格式
console.log(date); //Thu Dec 31 2015 23:59:59
console.log(date.toLocaleString()); //2015/12/31 下午11:59:59
date = new Date("January 12,2015"); //month dd,yyyy格式
console.log(date) //Mon Jan 12 2015 00:00:00
console.log(date.toLocaleString());
5.将日期转换成字符串
//转换成本地格式 -- 智能识别操作系统语言设置或者浏览器语言设置
console.log('转化成本地格式')
date = new Date();
console.log(date.toString()) //转换为字符串
console.log(date.toLocaleTimeString()) //获取当前 时间 下午5:09:19
console.log(date.toLocaleDateString()) //获取当前 日期 2015/9/24
console.log(date.toLocaleString()) //获取当前 日期与时间 2015/9/24 下午5:09:19
6.将一个字符串转换为Date对象的写法
//方法1 构造函数重载4
var str = "2015-12-12";
date = new Date(str); //字符串转换为Date对象
console.log(date.toLocaleString()); //2015/12/12 上午8:00:00
//方法2 Date.parse
console.log('将一个字符串转换为Date对象的写法 -Date.parse方法')
//把字符串转换为Date对象
//然后返回此Date对象与'1970/01/01 00:00:00'之间的毫秒值(北京时间的时区为东8区,起点时间实际为:'1970/01/01 08:00:00')
date = Date.parse("Jul 8, 2005")
console.log(date)
7.获取具体的某个日期或者时间
console.log('获取日期')
date = new Date();
console.log(date.getFullYear()) //获取完整的年份(4位,1970-????)
console.log(date.getYear()) //获取当前年份(2位,不准确,已淘汰) 从 ECMAScript v3 开始,JavaScript 的实现就不再使用该方法,而使用 getFullYear() 方法取而代之
console.log(date.getMonth()) //获取当前月份(0-11,0代表1月)
console.log(date.getDate()); //获取几号 - 0 - 31 比如25
console.log(date.getDay()); //获取星期几 - 比如星期3的3
//获取时间 - 小时(0-23) 分(0-59) 秒(0-659) 毫秒值(0-999) 比如:12:23:45 375
console.log('获取时间')
date = new Date();
console.log(date.getHours()) //获取小时 12
console.log(date.getMinutes()); //获取分 23
console.log(date.getSeconds()); //获取秒 45
console.log(date.getMilliseconds()); // 获取毫秒 375
console.log(date.getTime());
8.设置具体的某个日期或者时间
date = new Date();
date.setFullYear(9999); // => 9999年
date.setMonth(11); // => 11:月;实际为12月份(月份从0开始计算)
date.setDate(25); // => 25:日
date.setHours(15); // => 15:时
date.setMinutes(30); // => 30:分
date.setSeconds(40); // => 40:秒
date.setMilliseconds(333); // => 333:毫秒
console.log(date); // => 9999年12月25日 15点30分40秒 333毫秒