javascript:获取印度的日期和时间(而不是个人计算机的日期和时间)
如何在Javascript中获取印度的日期和时间?javascript:获取印度的日期和时间(而不是个人计算机的日期和时间),javascript,datetime,Javascript,Datetime,如何在Javascript中获取印度的日期和时间? 它不应采用计算机的日期和时间,但应采用标准世界时区,而不采用个人计算机的时间参考。这是不可能的。Javascript知道计算机的日期/时间,但如果与当前时区不一致,Javascript无法检测到 但是,有用于日期对象的UTC API,因此如果OP愿意信任客户端时钟,则可以执行此操作。您可以向服务器发出ajax请求并返回时间: html 这里有一个js提琴:Javascript是一种客户端语言。它在用户系统上执行,因此datetime对象保存用户
它不应采用计算机的日期和时间,但应采用标准世界时区,而不采用个人计算机的时间参考。这是不可能的。Javascript知道计算机的日期/时间,但如果与当前时区不一致,Javascript无法检测到
但是,有用于日期对象的UTC API,因此如果OP愿意信任客户端时钟,则可以执行此操作。您可以向服务器发出ajax请求并返回时间: html
这里有一个js提琴:Javascript是一种客户端语言。它在用户系统上执行,因此datetime对象保存用户的系统时间。但是Javascript可以进行HTTP调用,并且只能对服务器进行调用 您可以致电:
http://json-time.appspot.com/time.json?tz=GMT
您将得到响应(在浏览器中打开):
这是格林尼治时间。但是,由于它正在调用某个服务器,因此您的代码取决于该服务器的功能,因此您可以创建您的服务器并相应地处理请求。您可以在UTC时间上为最近和将来的时间加上5个半小时- 印度目前没有DST,只有一个时区 假设您可以从客户端获得UTC:
function IndiaTime(D){
D= D || new Date();
D.setUTCMinutes(D.getUTCMinutes()+330);
var A= [D.getUTCHours(), D.getUTCMinutes(), D.getUTCSeconds()];
if(A[1]<10) A[1]= '0'+A[1];
if(A[2]<10) A[2]= '0'+A[2];
return A.join(':');
}
alert(IndiaTime())
函数独立时间(D){
D=D | |新日期();
D.setUTCMinutes(D.getUTCMinutes()+330);
变量A=[D.getUTCHours(),D.getUTCMinutes(),D.getUTCSeconds()];
如果(A[1]在php上创建函数
public function ajax_getDate()
{
ini_set("date.timezone", "Asia/Kolkata");
echo json_encode(date('F d, Y h:i:s A'));
//you can use any date format you want check http://php.net/manual/en/function.date.php
}
然后使用ajax检索数据
$.ajax({
url : url + "ajax_getDate",
type: "GET",
dataType: "JSON",
success: function(data)
{
date = data;
// do something
}
});
如果您正在使用Node和NPM进行开发,则可以使用此软件包:
它包含了所有的世界时区,因此您可以通过编程随时获取印度的日期和时间。唯一的方法是从某个服务器获取数据,例如使用AJAX。@Brad well它可以获取UTC时间并进行适当调整。您能帮我提供javascript代码否。这不是工作原理。@Brad well是的,如果客户端计算机的时钟不好,没有什么可以做的。但是有用于日期对象的UTC API,因此如果OP愿意信任客户端时钟,它可以完成。@有意思的是,最初的问题明确地说时间是需要的,而不依赖于本地时钟。但是它不知道计算机在哪个时区,除非它得到时间这是来自某个服务器的正确数据。Utc加上印度时区offset@Chiel92他可以从客户处获得UTC时间,并且印度的时区是恒定的。更推荐这种方法。
function IndiaTime(D){
D= D || new Date();
D.setUTCMinutes(D.getUTCMinutes()+330);
var A= [D.getUTCHours(), D.getUTCMinutes(), D.getUTCSeconds()];
if(A[1]<10) A[1]= '0'+A[1];
if(A[2]<10) A[2]= '0'+A[2];
return A.join(':');
}
alert(IndiaTime())
public function ajax_getDate()
{
ini_set("date.timezone", "Asia/Kolkata");
echo json_encode(date('F d, Y h:i:s A'));
//you can use any date format you want check http://php.net/manual/en/function.date.php
}
$.ajax({
url : url + "ajax_getDate",
type: "GET",
dataType: "JSON",
success: function(data)
{
date = data;
// do something
}
});