有学有练才叫学习:学而不思则罔,思而不学则殆:学而不习,纸上谈兵,习而不进,画地为牢!

js Date对象构造方法

javascript cat 10个月前 (11-23) 91次浏览 已收录 2个评论 扫描二维码

时间对象

1、创建时间

创建一个时间,它是一个对象,它下面有很多的属性和方法

// 没有参数,创建的是电脑此时此刻的时间
var d = new Date();
console.log(d); // {}   它是一个对象,它下面有很多的属性和方法
console.log(typeof d); // 'object'
console.log(d.toString()); // 转字符串
console.log(d.toLocaleString()); // 转当地的时间字符串

// -------------------------------

// 1、有参数(全数字)
var d = new Date(2030, 9, 1, 12, 12, 12); // 2030年10月1日 12点12分12秒   月要减1

// 2、有参数(字符串参数)
var d = new Date('2030-12-1 12:12:12'); // 2030年12月1日 12点12分12秒
var d = new Date('2030/11/1 12:12:12') // 2030年11月1日 12点12分12秒
var d = new Date('2030,11,1 12:12:12') // 2030年11月1日 12点12分12秒

// 3、时间戳
var d = new Date(86309844266320);

console.log(d.toLocaleString());

2、时间的字符串表示

var d = new Date();

// 英文
console.log(d.toString());
console.log(d.toTimeString());
console.log(d.toDateString());

console.log('---------------------------------');

// 中文
console.log(d.toLocaleString());
console.log(d.toLocaleTimeString());
console.log(d.toLocaleDateString());

3、获取时间的某一部分

var d = new Date(); // {}  

var year = d.getFullYear(); // 年
var month = d.getMonth(); // 月,返回的是0--11,代表1--12
var day = d.getDate(); // 日

var week = d.getDay(); // 星期 ,返回0--6,代表周日--周六

var h = d.getHours(); // 小时
var m = d.getMinutes(); // 分钟
var s = d.getSeconds(); // 秒

console.log(year, month, day, week, h, m, s);

案例:数字时钟

4、设置时间的某一部分

var d = new Date();

d.setFullYear(2030); // 设置年为2030
d.setMonth(15); // 设置月 具有容错的能力
d.setDate(45); // 设置日 具有容错能力

console.log(d.toLocaleString());

5、时间戳

// 时间戳:从1970年1月1日0时到这个时间的毫秒数

// 方式一
var d = new Date();
console.log(d.getTime()); // 1630984426632

// 方式二,只能返回当前的时间戳,IE8及以下不支持
console.log(Date.now()); // 1630984426632

案例:倒计时

6、moment.js

官网:http://momentjs.cn/

moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率。日常开发中,通常会对时间进行下面这几个操作:比如获取时间,设置时间,格式化时间,比较时间等等。通过moment.js可以快速的格式化时间,得到想要的格式。

下载:http://cdn.staticfile.org/moment.js/2.24.0/moment.js

1、创建时间
// 1、创建时间
var d = moment(); // 没有参数,创建当前时间
var d = moment('2030-10-10');
var d = moment('2030-10-10 12:12:12')
var d = moment('20301010');
var d = moment(43543535343); // 时间戳

console.log(d.format('YYYY年MM月DD日 HH:mm:ss'));
2、格式化时间
var d = moment();

// format格式化,我们可以给format传参
console.log(d.format('YYYY')); // 年
console.log(d.format('MM')); // 月
console.log(d.format('DD')); // 日
console.log(d.format('d')); // 星期  返回0--6
console.log(d.format('HH')); // 小时
console.log(d.format('mm')); // 分钟
console.log(d.format('ss')); // 秒
console.log(d.format('x')); // 只含秒的时间戳
console.log(d.format('YYYY年MM月DD日 HH:mm:ss')); // 2020年05月26日 11:36:16
3、添加时间
// 添加时间
// 格式:时间.add(增加的数量, 时间的键);
var d = moment().add(7, 'day'); // 7天以后
var d = moment().add(7, 'year'); // 7年以后
console.log(d.format('YYYY年MM月DD日 HH:mm:ss'))
4、减少时间
// 减少时间
// 格式:时间.subtract(减少的数量, 时间的键);
var d = moment().subtract(7, 'day'); // 7天以前
var d = moment().subtract(7, 'year'); // 7年以前
console.log(d.format('YYYY年MM月DD日 HH:mm:ss'));
喜欢 (0)
cat
关于作者:
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(2)个小伙伴在吐槽
  1. You have 5 minute opportunity to change your life FOREVER. If you had invested a mere $10 in Trading few years ago, today you would be a Millionaire! ... DO NOT miss this chance again! Learn more by clicking the below link https://verifysuper.com/cl/i/wowxdv
    Sang Hershberger2022-07-18 05:10 回复 Windows 10 | Chrome 66.0.3359.117
    • cat
      Thanks, forget it
      cat2022-07-18 08:25 回复 Windows 10 | Firefox浏览器 102.0