摘要:注意客戶端與服務器日期進行傳輸的時候一般都是用大整數時間戳進行傳輸。
前言
一個網站的開發需要要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。
注意
客戶端與服務器日期進行傳輸的時候一般都是用大整數(時間戳)進行傳輸。倒計時或什么的各種時間都是以服務器為準,不能以客戶端的時間為準。[因為不然客戶端隨意對自己的時間進行修改、這樣子就會導致活動提前什么的嘍]
!客戶端的時區設置可能會導致時間結果的不同!
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完成
以上內容的思維導圖
由于對PHP的日期類型也只是略知一二而且時間問題在這里就沒有詳講了
以上的JavaScript日期類型和PHP日期類型都是本人在學習中遇到的一些問題和一些總結,如果大家覺得有哪里說得不好的或者有問題的歡迎指出哈!一起交流學習進步!這次我第一次在網上寫文章,歡迎多多指教喔,希望能和大家一起進步,謝謝!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/25861.html
摘要:注意客戶端與服務器日期進行傳輸的時候一般都是用大整數時間戳進行傳輸。 前言 一個網站的開發需要要UI、前端、后端三種工程師。現在的企業在招聘前端工程師的時候一般都要求其了解或者掌握一些后端的知識。因此,此文章主要介紹javascript的日期類型,也粗略的介紹一下php的日期類型,以及二者是如何交互數據的。 時間戳 什么是時間戳 時間戳是從格林威治時間1970年1月1日(00:0...
摘要:實際上,如果直接將表示日期的字符串傳遞給構造函數,也會在后臺調用方法,例如下面的代碼跟前面的是等價的。構造函數構造函數會模仿但有一點不同的是,日期和時間都是基于本地時區而非來創建。兼容性問題啊其原因就是非標準日期格式。 一:Date類型介紹 要創建一個日期對象,使用new操作符和Date構造函數即可: var now = new Date(); Date.parse()方法 其中Da...
摘要:對象是中的一個內置對象,它為數學常量和數學函數提供了屬性和方法,而不是一個函數對象。創建日期的幾種方法為時間戳為表示日期的字符串注意代表月份的整數值是從月到月常用方法返回自時間標準時間至今所經過的毫秒數。 Math對象 Math 是js中的一個內置對象, 它為數學常量和數學函數提供了屬性和方法,而不是一個函數對象。 屬性 Math.PI = > 圓周率,一個圓的周長和直徑之比,悅等...
摘要:類型使用自,國際協調時間年月日午夜零時開始經過的毫秒數來保存日期。日期時間組件方法到目前為止,剩下還未介紹的類型的方法如下表所示,都是直接取得和設置日期值中特定部分的方法了。 Date類型使用自UTC(Coordinated Universal Time,國際協調時間)1970 年1 月1 日午夜(零時)開始經過的毫秒數來保存日期。在使用這種數據存儲格式的條件下,Date 類型保存的日...
小編寫這篇文章的主要目的,主要是給大家進行講解關于Python相關內容的事情,主要是涉及到一些標準庫里面的一些事情,比如會涉及到dateime相關的模塊用法問題,下面就給大家做個比較詳細解答。 1、日期時間對象 日期時間對象是指具有日期(年月日)和時間(時分秒)雙重屬性的實例 日期時間對象的類型為datetime.datetime 日期時間對象常用的屬性有年、月、日、時、分、秒、微秒 ...
閱讀 1357·2021-11-24 09:39
閱讀 1346·2021-11-04 16:12
閱讀 2686·2021-09-24 09:47
閱讀 3337·2021-09-01 10:50
閱讀 1477·2019-08-30 15:55
閱讀 1423·2019-08-30 15:43
閱讀 642·2019-08-30 11:08
閱讀 3578·2019-08-23 18:33