我想javascript写一个函数返回现在时间到当天8:30地时间差,返回的是秒数,不知道怎么写

我想javascript写一个函数返回现在时间到当天8:30地时间差,返回的是秒数,不知道怎么写,第1张

程序如下:

import datetime

# 获取当前时间

current_time = datetimedatetimeutcnow() + datetimetimedelta(hours=8)

# 转换时区

new_timezone = datetimetimezone(datetimetimedelta(hours=-5))

converted_time = current_timeastimezone(new_timezone)

# 输出转换后的时间

print('UTC+8时间:', current_time)

print('UTC-5时间:', converted_time)

你好,这两种写法是不等价的setFullYear 的返回值并非Date

代码段1中最后输出的是DateToString()

代码段2 setFullYear函数返回值 返回一个整数,值为date对象距1970年1月1日午夜之间的毫秒数(时间戳)

所以js代码的编写有时候是不能图省事的,原生api有部分和平常人们的理解不一样

就譬如setMonth 的参数并不是输入1就是设置到1月份一样,它的参数是0-11

以下是Date 的api 相关资料,仅供参考

Date构造函数

// 当前时间

// Tue Sep 11 2012 15:37:46 GMT+0800 (中国标准时间)

new Date();

// Fri Jan 02 1970 08:00:00 GMT+0800 (中国标准时间)

new Date(3600 24 1000);

除了构造函数外,DateUTC()也用于构造日期,但是并不返回Date,而是返回从1970-01-01开始的毫秒数,比如:

// 1328054400100, 即2012-01-01 00:00:00 0100

DateUTC(2012, 1, 1, 0, 0, 0, 100);

需要注意的是,Date()函数返回日期字符串,比如

// date是字符串:'Tue Sep 11 2012 15:34:48 GMT+0800 (中国标准时间)'

var date = Date();

字符串转日期

Dateparse(string)方法并不是返回Date,而是返回整数

// 1120752000000, 即2005-07-08

Dateparse("Jul 8, 2005");

Dateparse("2005-07-08");

Dateparse("2005/07/08");

日期转字符串

toString(); // Tue Sep 11 2012 15:09:01 GMT+0800

toTimeString(); // 15:09:34 GMT+0800

toDateString(); // Tue Sep 11 2012

toGMTString(); // Tue, 11 Sep 2012 07:10:05 GMT

toUTCString(); // Tue, 11 Sep 2012 07:10:17 GMT

toLocaleString(); // 2012年9月11日 15:10:31

toLocaleTimeString(); // 15:10:45

toLocaleDateString(); // 2012年9月11日

Get系列方法

Date提供了一系列Get和Set方法,可以获取和设置年份、月份、日期、小时等等信息,并且提供了本地时间和UTC时间两套方案。本地时间方法如下:

var date = new Date();

dategetDate(); // 从 Date 对象返回一个月中的某一天 (1 ~ 31)。

dategetDay(); // 从 Date 对象返回一周中的某一天 (0 ~ 6)。

dategetMonth(); // 从 Date 对象返回月份 (0 ~ 11)。

dategetFullYear(); // 从 Date 对象以四位数字返回年份。不用使用getYear()。

dategetHours(); // 返回 Date 对象的小时 (0 ~ 23)。

dategetMinutes(); // 返回 Date 对象的分钟 (0 ~ 59)。

dategetSeconds(); // 返回 Date 对象的秒数 (0 ~ 59)。

dategetMilliseconds(); //返回 Date 对象的毫秒(0 ~ 999)。

dategetTime()方法返回从1970-01-01开始到现在的毫秒数

dategetTime(); // 返回1970年1月1日至今的毫秒数。

Get系列获取本地时间的方法和获取UTC时间的方法一一对应,如dategetUTCDate();

Set系列方法

Set系列方法和Get系列方法一一对应,如:

datesetDate(24);

datesetUTCDate(24);

datesetTime(time)方法以毫秒数设置Date对象,和new Date(time)的作用一样。

Date之间的计算

Date之间的计算实际上是毫秒数的计算,加法除外,比如

// Tue Sep 11 2012 15:40:45 GMT+0800 (中国标准时间)

var d = new Date();

// Tue Sep 11 2012 15:40:50 GMT+0800 (中国标准时间)

var b = new Date();

// -5781

consolelog(d - b);

// 'Tue Sep 11 2012 15:40:45 GMT+0800 (中国标准时间)Tue Sep 11 2012 15:40:50 GMT+0800 (中国标准时间)'

consolelog(d + b);

// 0999999995709353

consolelog(d / b);

// 18153499959824195e+24

consolelog(d b);

Date到字符串的自定义格式转换

JavaScript并没有提供像Ruby的strftime()这样的方法,如果需要某种格式的日期字符串只能自己实现。比如下面方法实现将日期转化成yyyy-mm-dd形式的字符串。

DateprototypetoHyphenDateString = function() {

var year = thisgetFullYear();

var month = thisgetMonth() + 1;

var date = thisgetDate();

if (month < 10) {

month = "0" + month;

}

if (date < 10) {

date = "0" + date;

}

return year + "-" + month + "-" + date;

};

var date = new Date();

// 输出2012-09-11

consolelog(datetoHyphenDateString());

你取到的是服务器在response里面返回的日期!

如果你连接的服务器bjtimecn没有在response响应里给你设置Date,则会取日期初始化的时间,也就是UTC0或者GMT0。

你在var d = new Date(dateStr);之前把dateStr给alert出来看看是否正确?

看一下java的当前时间:

在浏览器上输出javascript的当前时间:

对比一下,发现java的显示用了CST时间,javascprit用了GMT时间,那么二者有什么区别呢

GMT(Greenwich Mean Time)代表格林尼治标准时间,这个大家普通都知道,

而CST却同时可以代表如下 4 个不同的时区,与GMT时间的关系如下:

有时还会看到 2020-09-25T 05:35:00968 Z 这种时间,其实这种时间格式就是一个标准时间(其中T是分隔符,Z表示这个时间是标准时间),如果转化为当地时间(北京),要按照时区划分+8小时。

以上就是关于我想javascript写一个函数返回现在时间到当天8:30地时间差,返回的是秒数,不知道怎么写全部的内容,包括:我想javascript写一个函数返回现在时间到当天8:30地时间差,返回的是秒数,不知道怎么写、求一段JAVASCRIPT的时间显示代码,、查询日期库文档,写代码,完成当前时间从UTC+8到UTC-5的转换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址: http://outofmemory.cn/web/9750342.html

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

发表评论

登录后才能评论

评论列表(0条)

保存