js获取本地时间戳在不同设备上有差别吗

js获取本地时间戳在不同设备上有差别吗,第1张

不同的设备,本地的系统时间是不一样的

假如你电脑设定的时间是9:00 那么js获取的就是 9:00

但是如果此时 别人的电脑时间是 10:00 在别人的电脑上 js获取的时间就是 10:00

参考代码如下:

<SCRIPT LANGUAGE = "JavaScript">

var xml;

如果相比 Asia/Shanghai 你更想要 UTC+8 这种格式。那你可以通过获取时区偏移量的方式。

执行 getTimezoneOffset() 方法会返回 UTC 相对于当前时区 的相差分钟数。我们只需要再除以 -60 就得到了小时的偏移量。

我们通常所说的时间戳是指 UTC 时间自 1970 年 1 月 1 日 00 时 00 分 00 秒起经过的毫秒数。

UTC(Universal Time Coordinated),即协调世界时。又称世界统一时间、世界标准时间、国际协调时间。是基于标准的 GMT 提供的准确时间。

*** 作系统鼻祖 Unix 系统于 1971 年发布。为了在 Unix 上表示时间,需要通过当前时间和一个“纪元时间”进行对比,用其间相差的秒数作为时间戳。为了让 Unix 时间戳用的尽可能久,最初就把 1971-1-1 定义成“纪元时间”,后来为了方便记忆和使用,纪元时间从 1971-01-01 调整到了 1970-01-01。

GMT(Greenwich Mean Time),即格林尼治标准时间。格林尼治标准时间指位于伦敦郊区的皇家格林尼治天文台的标准时间,格林尼治标准时间的正午是指当太阳横穿格林尼治子午线时的时间。是 19 世纪中叶大英帝国的基准时间,同时也是事实上的世界基准时间。

但是由于地球在它的椭圆轨道里的运动速度不均匀,这个时刻可能和实际的太阳时相差 16 分钟。地球每天的自转是有些不规则的,而且正在缓慢减速。所以,格林尼治时间已经不再被作为标准时间使用。自 1924 年 2 月 5 日开始,格林尼治天文台每隔一小时会向全世界发放调时信息。而 UTC 是原子钟(是一种计时装置,精度可以达到每 2000 万年误差 1 秒)提供的基于标准的 GMT 提供的准确时间。

参考资料:

刚写的小例子,你可以参考下

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 401 Transitional//EN" ">

// 今天

var today = new Date();

todaysetHours(0);

todaysetMinutes(0);

todaysetSeconds(0);

todaysetMilliseconds(0);

alert(today);

var oneday = 1000  60  60  24;

// 昨天

var yesterday = new Date(today - oneday);

alert(yesterday);

// 上周一

var lastMonday = new Date(today- oneday  (todaygetDay() + 6));

alert(lastMonday);

// 上个月1号

var lastMonthFirst = new Date(today - oneday  todaygetDate());

lastMonthFirst = new Date(lastMonthFirst - oneday  (lastMonthFirstgetDate() - 1));

alert(lastMonthFirst);

如何在js中将时间戳转换为时间格式

将时间戳转换成日期格式:

简单的一句程式码

var date = new Date(时间戳); 获取一个时间物件 注意:如果是uinx时间戳记得乘于1000。比如php函式time()获得的时间戳就要乘于1000

/----------下面是获取时间日期的方法,需要什么样的格式自己拼接起来就好了----------/

dategetFullYear();获取完整的年份(4位,1970)

dategetMonth();获取月份(0-11,0代表1月,用的时候记得加上1)

dategetDate();获取日(1-31)

dategetTime();获取时间(从197011开始的毫秒数)

dategetHours();获取小时数(0-23)

dategetMinutes();获取分钟数(0-59)

dategetSeconds();获取秒数(0-59)

例子,比如需要这样的格式:yyyy-MM-dd hh:mm:ss

var date = new Date(1398250549490);

Y = dategetFullYear() + '-';

M = (dategetMonth()+1 < 10 '0'+(dategetMonth()+1) : dategetMonth()+1) + '-';

D = dategetDate() + ' ';

h = dategetHours() + ':';

m = dategetMinutes() + ':';

s = dategetSeconds();

consolelog(Y+M+D+h+m+s); 呀麻碟

输出结果:2014-04-23 18:55:49

将日期格式转换成时间戳:

也很简单

date = new Date('2014-04-23 18:55:49:123'); 传入一个时间格式,如果不传入就是获取现在的时间了,就这么简单。

有三种方式获取

time1 = dategetTime()

time2 = datevalueOf()

time3 = Dateparse(date)

三种获取的区别

第一、第二种:会精确到毫秒

第三种:只能精确到秒,毫秒将用0来代替

比如上面程式码输出的结果(一眼就能看出区别):

1398250549123

1398250549123

1398250549000

注意:获取到的时间戳除于1000就可以获得unix的时间戳了,在传值给PHP时用得到。

如何用date将时间戳转换为时间格式

时间戳就是如1377216000000 这种格式我们在mysql资料库中会经常用到把时间转换成时间戳或把时间戳转换成日期格式了,下面我来介绍安卓中时间戳 *** 作转换方法。

一、原理

时间戳的原理是把时间格式转为十进位制格式,这样就方便时间的计算。好~ 直接进入主题。(下面封装了一个类,有需要的同学可以参考或是直接Copy 就可以用了。)

如: 2013年08月23日 转化后是 1377216000000

二、步骤

1、建立 DateUtilsl类。

程式码如下 复制程式码

importjavatextParseException;

importjavatextSimpleDateFormat;

importjavautilDate;

/

@author Msquirrel

/

public class DateUtils {

privateSimpleDateFormat sf = null;

/获取系统时间 格式为:"yyyy/MM/dd "/

public static String getCurrentDate() {

Date d = newDate();

sf = newSimpleDateFormat("yyyy年MM月dd日");

returnsfformat(d);

}

/时间戳转换成字元窜/

public static String getDateToString(long time) {

Date d = newDate(time);

sf = newSimpleDateFormat("yyyy年MM月dd日");

returnsfformat(d);

}

/将字串转为时间戳/

public static long getStringToDate(String time) {

sdf = newSimpleDateFormat("yyyy年MM月dd日");

Date date = newDate();

try{

date = sdfparse(time);

} catch(ParseException e) {

TODO Auto-generated catch block

eprintStackTrace();

}

returndategetTime();

}

2、在对应使用的地方呼叫就可以了。

程式码如下 复制程式码

DateUtilsgetCurrentDate(); 获取系统当前时间

DateUtilsgetDateToString(时间戳); 时间戳转为时间格式

DateUtilsgetStringToDate("时间格式");时间格式转为时间戳

js 字串如何转换为时间格式?

var str = "2010-08-01"; 转换日期格式str = strreplace(/-/g, '/');  "2010/08/01"; 建立日期物件var date = new Date(str); 加一天datesetDate(dategetDate() + 1); 没有格式化的功能,只能一个一个取str = dategetFullYear() + '-'     因为js里month从0开始,所以要加1    + (parseInt(dategetMonth()) + 1) + '-'    + dategetDate();

var str = "2010-08-01"; 转换日期格式str = strreplace(/-/g, '/');  "2010/08/01"; 建立日期物件var date = new Date(str); 加一天datesetDate(dategetDate() + 1);

如何在EXCEL表格中将时间格式转换为数值格式

假定原资料在A列从A1开始,解决办法如下:

方法一:使用辅助列法。

1、在B1输入公式=MID(A1,MIN(FIND(ROW($1:$9),A1&1/17)),20)按组合键结束,下拉填充。

2、在C1输入公式=B124 下拉填充就是你所要的结果。

方法一:定义名称法。

1、将滑鼠点中B1单元格,按CTRL+F3调出定义名称功能,在“名称”处输入ZH,在“引用位置”处输入=MID(A1,MIN(FIND(ROW($1:$9),A1&1/17)),20),确定。

2、在B1单元格输入公式=ZH24 ,下拉填充即是你所要的结果。

怎么把mysql里面的时间格式转换为时间戳

UNIX_TIMESTAMP 从XXXX-XX-XX XX:XX:XX变成int

FROM_UNIXTIME 从int变成XXXX-XX-XX XX:XX:XX

excel里如何将数值转换为时间格式

hour 函式只能是0到23的整数(一天24小时) 若把你的时间转换为小时,必须用函式。 假设时间在A1,则在B1输入公式: =DAY(A1)24+HOUR(A1)+MINUTE(A1)/60+SECOND(A1)/3600

怎么在mysql中将时间戳转换成时间格式

在实现类中查询资料库后,往物件中设定值的时候用getTimestamp()

如:物件名setPubtime(rsgetTimestamp(1));

js 字串转换为时间格式

new Date在不同浏览器中支援的写法都不同,最相容的写法是yyyy/MM/dd

其他写法在部分浏览器中无法解析

如,IE7不支援(yyyy-MM-dd,只支援/分割)

chrome支援的种类很多

Firefox支援yyyy/M/d但不支援yyyy-M-d等

如何将字串转换为时间格式

java中将字串转换成日期型别,可以使用SimpleDateFormat日期转换类,有一个前提是字串必须满足日期的格式,如果不是会有异常

如何将数值型变数转换为时间格式

开启Excel文件;

选择要转换的表格区域,右键-设定单元格格式

选择:数字-日期或者时间-型别(可根据自己的需要选择型别,跟多的可以在自定义里

// npm i moment

moment()startOf('day')// 当天零点

moment()subtract(1,'days')startOf('day')// 昨天零点

还有你这为啥过1秒才叫零点?

js获取的时间戳是13位的,精确到毫秒,而php获取的时间戳用strtotime是10位的,这样就导致一般我们在计算倒计时这样的问题时会出现差错,我们可以把js获取的时间戳除以1000,然后再计算

以上就是关于js获取本地时间戳在不同设备上有差别吗全部的内容,包括:js获取本地时间戳在不同设备上有差别吗、JS如何获取北京时间、JS:如何获取时区等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9651707.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存