Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何获取moment.js/timezone.js date的特定部分_Javascript_Date_Variables_Momentjs - Fatal编程技术网

Javascript 如何获取moment.js/timezone.js date的特定部分

Javascript 如何获取moment.js/timezone.js date的特定部分,javascript,date,variables,momentjs,Javascript,Date,Variables,Momentjs,我对javascript很不在行。我开始在我的项目中使用这个库,使javascript代码按时间和日期运行,它总是按特定的时区对齐。但我很难理解如何访问变量的不同部分。我的代码: var ItalyZone = "Europe/Rome"; var currentTime= moment().tz(ItalyZone).format(); alert(currentTime.hours()); //this is not working.... 如何仅访问该变量“CurrentTime”的小时

我对javascript很不在行。我开始在我的项目中使用这个库,使javascript代码按时间和日期运行,它总是按特定的时区对齐。但我很难理解如何访问变量的不同部分。我的代码:

var ItalyZone = "Europe/Rome";
var currentTime= moment().tz(ItalyZone).format();
alert(currentTime.hours()); //this is not working....
如何仅访问该变量“CurrentTime”的小时/分钟? 如何为变量“currentTime”设置新的小时数?

使用简单的javascript Date()函数,我可以简单地执行currentTime.getHours()/currentTime.setHours(),但是我应该如何使用moment.js???

您可以使用该函数执行此操作

moment().minute(Number);
moment().minute(); // Number
moment().minutes(Number);
moment().minutes(); // Number

获取或设置分钟数。

如果只需要小时数,为什么要使用
格式
,请返回日期对象

var ItalyZone   = "Europe/Rome";
var currentTime = moment().tz(ItalyZone).toDate(); // return JS date object
var hours       = currentTime.getHours()

您可以使用日期格式获取日期时间的任何部分:

var ItalyZone=“欧洲/罗马”;
矩().locale(ItalyZone).format(“yyyy”);//年
矩().locale(ItalyZone).format(“MM”);//月
矩().locale(ItalyZone).format(“DD”);//白天
矩().locale(ItalyZone).format(“hh”);//小时
矩().locale(ItalyZone).format(“mm”);//会议记录
矩().locale(ItalyZone).format(“ss”);//塞孔茨
log(矩().locale(ItalyZone.format(“YYYY-MM-DD-hh-MM-ss”)

在我的代码中,我有很多地方可以比较变量currentTime的小时和分钟。我需要得到它的具体变量“currentTime”你的答案不能解决我的问题:currentTime.moment().minutes();不会给我结果。格式如何?moment().tz(ItalyZone).format(“hh”)-hours moment().tz(ItalyZone).format(“mm”)-minutes您的答案很好,但如果我更改计算机/智能设备的时间,也会影响可变的小时数。我开始使用moment.js来获取我的项目中特定时区的特定真实而非伪造的时间,时钟变化不会影响javascript代码。换句话说:设备上的时钟变化不会影响代码:)什么?当然,如果你改变计算机时钟,它会改变,Moment不能解决这个问题,这是使用dates客户端时的一个继承缺陷,唯一的解决方案是从服务器获取日期。哦****没有很好地测试它,我认为在我的情况下,这是一个错误的选择。我将结束这个话题。好吧,我不知道你想做什么,但是,如果你想要一个稳定、正确的日期,你必须从服务器上获取它。客户端获取的任何日期都将基于计算机/设备内部时钟,因为这是浏览器中唯一可用的内容。矩只是使格式化javascript日期更容易,在您的例子中,设置时区等。它仍然从普通javascript
date
构造函数获取日期。