JavaScript:Date 对象-时间日期

news/2024/7/10 23:54:26 标签: javascript, 前端, 开发语言, ecmascript, html5, jquery, chrome

Date 对象-时间日期:

- JS中所有的关于时间信息都需要通过Date对象来表示

// 创建一个Date对象
// 如果直接使用new Date()创建时间对象,它会默认创建一个表示代码执行时刻的对象

var d = new Date();

// 如果希望创建一个指定的时间的Date的对象,需要传递一个字符串来指定时间

// 字符串的格式:月份/日/年 时:分:秒

// d = new Date('12/3/2018 13:45:00');

// console.log(d);

/*

Date对象的方法:

getFullYear()

- 获取当前Date对象的年份信息(四位)

getMonth()

- 获取当前Date对象的月份信息(从0开始)

0 表示 1月

1 表示 2月

...

getDate()

- 获取当前Date对象是几日

getDay()

- 获取当前Date对象是周几

- 取值范围从 0-6

- 0表示周日 1表示周一 ...

d = new Date();

d = new Date('3/7/2000 10:35:34');

var year = d.getFullYear(); // 获取年份

var month = d.getMonth(); // 获取月份

var dt = d.getDate(); // 获取几号

var day = d.getDay(); // 获取周几

// 创建一个数组,来存储周几

var week = ['周日','周一','周二','周三','周四','周五','周六'];

// console.log(week[d.getDay()]);

/*

getTime()

- 用来获取当前日期对象的时间戳

- 时间戳指从1970年1月1日0时0分0秒,

到当前时间所经历的毫秒数

*/

d = new Date();

var time = d.getTime();

// 创建一个日期对象

var meetDay = new Date('4/4/2019 14:33:45');

// 创建一个当前日期对象

var currentDay = new Date();

time = currentDay.getTime() - meetDay.getTime();

// console.log(time / 1000 / 60 / 60 / 24);

/*

Date.now()

- 获取当前的时间戳

*/

//在代码执行前获取一个时间戳

var begin = Date.now();

for(var i=0 ; i<1000; i++){

console.log(1);

}

//在代码执行后获取一个时间戳

var end = Date.now();

console.log(end - begin);

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

var date = new Date();

date .getYear(); //获取当前年份(2位)

date .getFullYear(); //获取完整的年份(4位)

date .getMonth(); //获取当前月份(0-11,0代表1月)

date .getDate(); //获取当前日(1-31)

date .getDay(); //获取当前星期X(0-6,0代表星期天)

date .getTime(); //获取当前时间(从1970.1.1开始的毫秒数)

date .getHours(); //获取当前小时数(0-23)

date .getMinutes(); //获取当前分钟数(0-59)

date .getSeconds(); //获取当前秒数(0-59)

date .getMilliseconds(); //获取当前毫秒数(0-999)

date .toLocaleDateString(); //获取当前日期

var mytime=date .toLocaleTimeString(); //获取当前时间

date .toLocaleString( ); //获取日期与时间

2 实现数组》日期排序:

数组中的每一个(对象)含有日期,根据日期 进行升序 降序 重新排列数组顺序。

let data = [{

id: 2,

time: '2022-07-12 10:53:12'

},

{

id: 4,

time: '2023-05-16 10:51:09'

}, {

id: 1,

time: '2022-06-06 11:06:32'

}, {

id: 3,

time: '2023-04-16 11:05:32'

}

]

function dateData(property, bol) { //property是你需要排序传入的key,bol为true时是升序,false为降序

return function(a, b) {

var value1 = a[property];

var value2 = b[property];

if (bol) {

// 升序

return Date.parse(value1) - Date.parse(value2);

} else {

// 降序

return Date.parse(value2) - Date.parse(value1)

}

}

}

// console.log(data.sort(dateData("time", true)))//升序

console.log(data.sort(dateData("time", false)))//降序

降序排列效果:

欢迎关注我的原创文章:小伙伴们!我是一名热衷于前端开发的作者,致力于分享我的知识和经验,帮助其他学习前端的小伙伴们。在我的文章中,你将会找到大量关于前端开发的精彩内容。

学习前端技术是现代互联网时代中非常重要的一项技能。无论你是想成为一名专业的前端工程师,还是仅仅对前端开发感兴趣,我的文章将能为你提供宝贵的指导和知识。

在我的文章中,你将会学到如何使用HTML、CSS和JavaScript创建精美的网页。我将深入讲解每个语言的基础知识,并提供一些实用技巧和最佳实践。无论你是初学者还是有一定经验的开发者,我的文章都能够满足你的学习需求。

此外,我还会分享一些关于前端开发的最新动态和行业趋势。互联网技术在不断发展,新的框架和工具层出不穷。通过我的文章,你将会了解到最新的前端技术趋势,并了解如何应对这些变化。

我深知学习前端不易,因此我将尽力以简洁明了的方式解释复杂的概念,并提供一些易于理解的实例和案例。我希望我的文章能够帮助你更快地理解前端开发,并提升你的技能。

如果你想了解更多关于前端开发的内容,不妨关注我的原创文章。我会不定期更新,为你带来最新的前端技术和知识。感谢你的关注和支持,我们一起探讨交流技术共同进步,期待与你一同探索前端开发的奇妙世界!


http://www.niftyadmin.cn/n/5311852.html

相关文章

C++内存分配策略

目录 基础概念 内存布局 分配方式 实现 1.new和delete 2.利用空间配置器alloc 3.用malloc和free 4.静态内存分配 基础概念 在讲内存分配之前&#xff0c;先对一些基础概念进行阐述&#xff0c;以便能更好的讨论问题 内存布局 代码编译为可执行程序后运行占用的内存可…

Ansible:简单、快速、安全、最强大的 IT 自动化系统 | 开源日报 No.140

ansible/ansible Stars: 59.6k License: GPL-3.0 Ansible 是一个极其简单的 IT 自动化系统&#xff0c;它处理配置管理、应用部署、云提供、临时任务执行、网络自动化和多节点编排。Ansible 使得像零停机滚动更新与负载均衡器一样复杂的更改变得容易。主要功能包括&#xff1…

SpringBoot 静态资源映射

文章目录 一、静态资源映射1.1 什么是静态资源映射1.2 常见的静态资源映射方式 二、SpringBooot默认配置2.1 resources 目录2.2 SpringBoot 默认配置 三、SpringBoot手动配置3.1 配置属性3.2 自定义配置类 参考资料 一、静态资源映射 1.1 什么是静态资源映射 资源映射指的是将…

C++ 中的指针和引用有什么区别?

C 中的指针和引用有什么区别&#xff1f; 在开始前我有一些资料&#xff0c;是我根据网友给的问题精心整理了一份「C的资料从专业入门到高级教程」&#xff0c; 点个关注在评论区回复“888”之后私信回复“888”&#xff0c;全部无偿共享给大家&#xff01;&#xff01;&#…

ElasticSearch 集群搭建与状态监控cerebro

单机的elasticsearch做数据存储&#xff0c;必然面临两个问题:海量数据存储问题、单点故障问题。为了解决存储能力上上限问题就可以用到集群部署。 海量数据存储问题:将索引库从逻辑上拆分为N个分片(shard)&#xff0c;存储到多个节点单点故障问题:将分片数据在不同节点备份 (r…

ubuntu安装mysql8指定数据目录

ubuntu安装mysql8指定数据目录 背景 Ubuntu 22.04.3 LTS 安装步骤 更新到最新版本 sudo apt update添加 MySQL APT 仓库 执行命令期间需要按回车键&#xff0c;控制台提示Press [ENTER] to continue or Ctrl-c to cancel. sudo apt install software-properties-common -y s…

阿里云2核4G服务器优惠价格30元3个月?小心坑

2024年阿里云2核4G服务器优惠价格30元3个月&#xff0c;活动 https://t.aliyun.com/U/bLynLC 配置为云服务器ECS经济型e实例ecs.e-c1m2.large&#xff0c;3M固定带宽&#xff0c;系统盘为40GB ESSD Entry&#xff0c;活动打开如下图&#xff1a; 阿里云2核4G服务器优惠价格30元…

neo4j-cypher语言使用

neo4j-cypher语言使用 neo4j的本质就是节点关系。节点是用小括号来表示&#xff0c;&#xff08;节点&#xff1a;节点标签 {属性名称&#xff1a;属性值}&#xff09;with 本质是with(变量) 传送到下一个语句&#xff0c;with 子处理(变量), with 查询return 变量。unwind 本质…