资讯专栏INFORMATION COLUMN

javascript日期类型(Date)与php日期类型详解

chemzqm / 3095人阅读

摘要:注意客户端与服务器日期进行传输的时候一般都是用大整数时间戳进行传输。

前言

一个网站的开发需要要UI、前端、后端三种工程师。现在的企业在招聘前端工程师的时候一般都要求其了解或者掌握一些后端的知识。因此,此文章主要介绍javascript的日期类型,也粗略的介绍一下php的日期类型,以及二者是如何交互数据的。

时间戳

什么是时间戳
时间戳是从格林威治时间1970年1月1日(00:00:00 GMT)至今的总秒数。它也被称为Unix时间戳。多数系统将时间戳以一个32位的整数来存储。

为什么要使用时间戳
便于系统对不同格式的时间进行存储

常见的时间戳有时候是10位的有时候是13位的到底有什么区别
我所说的这个10位和13位当然表示的是同一个时间了,不同的时间位数不同很正常哦!1970年至今的时间一般是10位或者13位。在不同的语言中表示时间戳的单位是不一样的,在JavaScript中表示时间戳的单位为毫秒(ms)、在PHP中表示时间戳的单位是秒(s)。s和ms的转换刚好是10的三次方,javascript中的时间戳(现在)一般用13位表示,PHP中的时间戳(现在)一般用10位表示。因此记得PHP的时间戳传递到JavaScript中使用的使用记得要*1000

注意
客户端与服务器日期进行传输的时候一般都是用大整数(时间戳)进行传输。倒计时或什么的各种时间都是以服务器为准,不能以客户端的时间为准。[因为不然客户端随意对自己的时间进行修改、这样子就会导致活动提前什么的喽]
!客户端的时区设置可能会导致时间结果的不同!

javascript中的日期类型

Date对象简介
Date对象用于对日期和时间进行存储和计算

创建Date对象
//使用指定的年月日[时分秒]进行初始化
new Date(2017,8,17); //年月日
new Date(2017,8,17,19,20,20); //年月日时分秒
//注意:月份是从0~11,因此想设置为9月,参数应该写8
new Date("2017/9/17"); //把String转换为Date
//初始化为系统时间
new Date();
new Date;
Date();
//初始化为距离计算机元年指定毫秒数的时间
new Date(0);
new Date(3600*24) //距离计算机元年 3600*24s 一个小时3600s 一天24小时 3600*24刚好是一天

日期对象的API
单位:
FullYear 年 Month 月 Date 日 Day 星期 //年月日星期 无s结尾
Hours 小时 Minutes 分钟 Seconds 秒 MilliSeconds 毫秒 //小时分钟秒毫秒 有s结尾
API:
setFullYear()、getFullYear()、setMonth()、getMonth()、setDate()、getDate()、getDay()
setHours()、getHours()、setMinutes()、getMinutes()、setSeconds()、getSeconds()、setMilliSeconds()、getMilliSeconds()
注意:Day星期只有get方法没有set方法 因为年月日确定了之后星期已经确定了

格式化API
toString() //当地标准时间的完整格式
toLocaleString() //当地时间简化版格式
toLocaleDateString() //当地时间简化版格式日期部分
toLocaleTimeString() //当地时间简化版格式时间部分
toGMTString() //国际标准时间(0时区)

应用场景
1、倒计时...商城中的订单已经下单多少天
//思路:两任意日期可以相加减
结束时间-开始时间=相差毫秒数
2、某职员工作三个月已知其入职时间计算其离职的时间
//思路:复制一个和入职时间相同的日期对象 对其进行修改
实现方法:
//已知入职时间为date1
var date2 = new Date(date1); //date2为离职时间
date2.setMonth(date2.getMonth()+3) //得到其入职的月份对其+3 把+3后的月份设置为离职的月份 修改date2完成

以上内容的思维导图

JavaScript日期类型与PHP日期类型的梳理

由于对PHP的日期类型也只是略知一二而且时间问题在这里就没有详讲了

结语

以上的JavaScript日期类型和PHP日期类型都是本人在学习中遇到的一些问题和一些总结,如果大家觉得有哪里说得不好的或者有问题的欢迎指出哈!一起交流学习进步!这次我第一次在网上写文章,欢迎多多指教喔,希望能和大家一起进步,谢谢!

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/91889.html

相关文章

  • javascript日期类型(Date)php日期类型详解

    摘要:注意客户端与服务器日期进行传输的时候一般都是用大整数时间戳进行传输。 前言 一个网站的开发需要要UI、前端、后端三种工程师。现在的企业在招聘前端工程师的时候一般都要求其了解或者掌握一些后端的知识。因此,此文章主要介绍javascript的日期类型,也粗略的介绍一下php的日期类型,以及二者是如何交互数据的。 时间戳 什么是时间戳 时间戳是从格林威治时间1970年1月1日(00:0...

    BDEEFE 评论0 收藏0
  • JS基础篇--日期Date详解实例扩展

    摘要:实际上,如果直接将表示日期的字符串传递给构造函数,也会在后台调用方法,例如下面的代码跟前面的是等价的。构造函数构造函数会模仿但有一点不同的是,日期和时间都是基于本地时区而非来创建。兼容性问题啊其原因就是非标准日期格式。 一:Date类型介绍 要创建一个日期对象,使用new操作符和Date构造函数即可: var now = new Date(); Date.parse()方法 其中Da...

    Apollo 评论0 收藏0
  • Javascript Math对象和Date对象常用方法详解

    摘要:对象是中的一个内置对象,它为数学常量和数学函数提供了属性和方法,而不是一个函数对象。创建日期的几种方法为时间戳为表示日期的字符串注意代表月份的整数值是从月到月常用方法返回自时间标准时间至今所经过的毫秒数。 Math对象 Math 是js中的一个内置对象, 它为数学常量和数学函数提供了属性和方法,而不是一个函数对象。 属性 Math.PI = > 圆周率,一个圆的周长和直径之比,悦等...

    张宪坤 评论0 收藏0
  • 详解日期(Date)引用类型

    摘要:类型使用自,国际协调时间年月日午夜零时开始经过的毫秒数来保存日期。日期时间组件方法到目前为止,剩下还未介绍的类型的方法如下表所示,都是直接取得和设置日期值中特定部分的方法了。 Date类型使用自UTC(Coordinated Universal Time,国际协调时间)1970 年1 月1 日午夜(零时)开始经过的毫秒数来保存日期。在使用这种数据存储格式的条件下,Date 类型保存的日...

    Shisui 评论0 收藏0
  • Python标准库datetime之datetime模块用法分析详细解答

      小编写这篇文章的主要目的,主要是给大家进行讲解关于Python相关内容的事情,主要是涉及到一些标准库里面的一些事情,比如会涉及到dateime相关的模块用法问题,下面就给大家做个比较详细解答。  1、日期时间对象  日期时间对象是指具有日期(年月日)和时间(时分秒)双重属性的实例  日期时间对象的类型为datetime.datetime  日期时间对象常用的属性有年、月、日、时、分、秒、微秒 ...

    89542767 评论0 收藏0

发表评论

0条评论

chemzqm

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<