Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/89.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中将等时转换为短时_Javascript_Jquery - Fatal编程技术网

在javascript中将等时转换为短时

在javascript中将等时转换为短时,javascript,jquery,Javascript,Jquery,我有一个ajax调用,它返回一个时间,例如16:06:59,我想将它转换为下午4:06 var mydate = obj[0].time; mydate是16:06:59,但当我尝试将它与var date=new date()一起使用时,它会给出今天的日期 有什么办法可以实现我的愿望吗 谢谢最简单的答案是将其分成若干部分,然后根据需要使用它们,例如: var parts = obj[0].time.split(":"); // parts[0] is now "16" // parts[1]

我有一个ajax调用,它返回一个时间,例如16:06:59,我想将它转换为下午4:06

 var mydate = obj[0].time;
mydate
是16:06:59,但当我尝试将它与
var date=new date()
一起使用时,它会给出今天的日期

有什么办法可以实现我的愿望吗


谢谢

最简单的答案是将其分成若干部分,然后根据需要使用它们,例如:

var parts = obj[0].time.split(":");
// parts[0] is now "16"
// parts[1] is now "06"
// parts[2] is now "59"
// Then perhaps (to get numbers and give the parts names)
var hours = parseInt(parts[0], 10);
var minutes = parseInt(parts[1], 10);
var seconds = parseInt(parts[2], 10);
…当然,对于第一个,您可以使用:

if (hours > 12) {
    hours -= 12;
}
…如果你想做上午/下午的事。请记住,您这样做了,并相应地设置了a.m./p.m.变量

如果确实需要
日期
实例,可以执行以下操作:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");

最简单的答案是将其拆分为多个部分,然后根据需要使用它们,例如:

var parts = obj[0].time.split(":");
// parts[0] is now "16"
// parts[1] is now "06"
// parts[2] is now "59"
// Then perhaps (to get numbers and give the parts names)
var hours = parseInt(parts[0], 10);
var minutes = parseInt(parts[1], 10);
var seconds = parseInt(parts[2], 10);
…当然,对于第一个,您可以使用:

if (hours > 12) {
    hours -= 12;
}
…如果你想做上午/下午的事。请记住,您这样做了,并相应地设置了a.m./p.m.变量

如果确实需要
日期
实例,可以执行以下操作:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");

最简单的答案是将其拆分为多个部分,然后根据需要使用它们,例如:

var parts = obj[0].time.split(":");
// parts[0] is now "16"
// parts[1] is now "06"
// parts[2] is now "59"
// Then perhaps (to get numbers and give the parts names)
var hours = parseInt(parts[0], 10);
var minutes = parseInt(parts[1], 10);
var seconds = parseInt(parts[2], 10);
…当然,对于第一个,您可以使用:

if (hours > 12) {
    hours -= 12;
}
…如果你想做上午/下午的事。请记住,您这样做了,并相应地设置了a.m./p.m.变量

如果确实需要
日期
实例,可以执行以下操作:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");

最简单的答案是将其拆分为多个部分,然后根据需要使用它们,例如:

var parts = obj[0].time.split(":");
// parts[0] is now "16"
// parts[1] is now "06"
// parts[2] is now "59"
// Then perhaps (to get numbers and give the parts names)
var hours = parseInt(parts[0], 10);
var minutes = parseInt(parts[1], 10);
var seconds = parseInt(parts[2], 10);
…当然,对于第一个,您可以使用:

if (hours > 12) {
    hours -= 12;
}
…如果你想做上午/下午的事。请记住,您这样做了,并相应地设置了a.m./p.m.变量

如果确实需要
日期
实例,可以执行以下操作:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");
您可以这样做:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");
您可以这样做:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");
您可以这样做:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");
您可以这样做:

var dt = new Date();
dt.setHours(hours); // Be sure to use the real value here, not the one -12
dt.setMinutes(minutes);
dt.setSeconds(seconds);
"16:06:59".split(':').slice(0, 2)
    .map(function (x, index) {
    return index == 0 ? (x > 12 ? x - 12 + "PM" : x + "AM") : x
}).join(":").replace(/(.+?)((P|A)M)(.+)/, "$1$4 $2");
试试这个:

function Convert24HoursTo12(time) {
  var timeArray = time.split(':');
  var hours = timeArray[0]; 
  var minutes = timeArray[1];
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return strTime;
}
并称之为:

Convert24HoursTo12(obj[0].time);
试试这个:

function Convert24HoursTo12(time) {
  var timeArray = time.split(':');
  var hours = timeArray[0]; 
  var minutes = timeArray[1];
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return strTime;
}
并称之为:

Convert24HoursTo12(obj[0].time);
试试这个:

function Convert24HoursTo12(time) {
  var timeArray = time.split(':');
  var hours = timeArray[0]; 
  var minutes = timeArray[1];
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return strTime;
}
并称之为:

Convert24HoursTo12(obj[0].time);
试试这个:

function Convert24HoursTo12(time) {
  var timeArray = time.split(':');
  var hours = timeArray[0]; 
  var minutes = timeArray[1];
  var ampm = hours >= 12 ? 'pm' : 'am';
  hours = hours % 12;
  hours = hours ? hours : 12; // the hour '0' should be '12'
  var strTime = hours + ':' + minutes + ' ' + ampm;
  return strTime;
}
并称之为:

Convert24HoursTo12(obj[0].time);

根据需要修改以下代码

var mydate= new Date();
var myhour=mydate.getHours();
var ampm="AM";
if(myhour==12)ampm="PM";
if(myhour==0)myhour=12;
if (myhour>12){
    myhour-=12;
    ampm="PM";
}else{
    myhour=mydate.getHours();
}
var mytime=myhour+":"+mydate.getMinutes()+":"+mydate.getSeconds()+" "+ampm;
然后在任何需要的地方使用mytime变量


我没有检查,因为我现在很忙。我希望它能正常工作。

根据需要修改以下代码

var mydate= new Date();
var myhour=mydate.getHours();
var ampm="AM";
if(myhour==12)ampm="PM";
if(myhour==0)myhour=12;
if (myhour>12){
    myhour-=12;
    ampm="PM";
}else{
    myhour=mydate.getHours();
}
var mytime=myhour+":"+mydate.getMinutes()+":"+mydate.getSeconds()+" "+ampm;
然后在任何需要的地方使用mytime变量


我没有检查,因为我现在很忙。我希望它能正常工作。

根据需要修改以下代码

var mydate= new Date();
var myhour=mydate.getHours();
var ampm="AM";
if(myhour==12)ampm="PM";
if(myhour==0)myhour=12;
if (myhour>12){
    myhour-=12;
    ampm="PM";
}else{
    myhour=mydate.getHours();
}
var mytime=myhour+":"+mydate.getMinutes()+":"+mydate.getSeconds()+" "+ampm;
然后在任何需要的地方使用mytime变量


我没有检查,因为我现在很忙。我希望它能正常工作。

根据需要修改以下代码

var mydate= new Date();
var myhour=mydate.getHours();
var ampm="AM";
if(myhour==12)ampm="PM";
if(myhour==0)myhour=12;
if (myhour>12){
    myhour-=12;
    ampm="PM";
}else{
    myhour=mydate.getHours();
}
var mytime=myhour+":"+mydate.getMinutes()+":"+mydate.getSeconds()+" "+ampm;
然后在任何需要的地方使用mytime变量


我没有检查,因为我现在很忙。我希望它能很好地工作。

为什么要将
.map()
与一个条件一起使用,以仅对数组中的第一项进行实际操作?结果字符串末尾的“AM”或“PM”在哪里?因为16是第一个元素,我要把它转换成4,下一部分就可以了。你不需要对它做什么,所以只要返回它就行了。我想说的是,如果你知道只想修改第一个元素,那么使用
.map()
并遍历整个数组有点笨拙<代码>var d=“16:06:59”。拆分(“:”);如果(d[0]>12)d[0]=12;d=d.join(“:”)以更直接、更高效的方式做同样的事情…@nnnnnn,我将其拆分,并使用slice和map()只获取前两个元素。现在我添加了PM,AM,就像使用“消防车”一样,你可以使用“灭火器”。。。这就是@nnnnnn的要点,为什么要将
.map()
与一个条件一起使用,以仅实际操作数组中的第一项?结果字符串末尾的“AM”或“PM”在哪里?因为16是第一个元素,我要把它转换成4,下一部分就可以了。你不需要对它做什么,所以只要返回它就行了。我想说的是,如果你知道只想修改第一个元素,那么使用
.map()
并遍历整个数组有点笨拙<代码>var d=“16:06:59”。拆分(“:”);如果(d[0]>12)d[0]=12;d=d.join(“:”)以更直接、更高效的方式做同样的事情…@nnnnnn,我将其拆分,并使用slice和map()只获取前两个元素。现在我添加了PM,AM,就像使用“消防车”一样,你可以使用“灭火器”。。。这就是@nnnnnn的要点,为什么要将
.map()
与一个条件一起使用,以仅实际操作数组中的第一项?结果字符串末尾的“AM”或“PM”在哪里?因为16是第一个元素,我要把它转换成4,下一部分就可以了。你不需要对它做什么,所以只要返回它就行了。我想说的是,如果你知道只想修改第一个元素,那么使用
.map()
并遍历整个数组有点笨拙<代码>var d=“16:06:59”。拆分(“:”);如果(d[0]>12)d[0]=12;d=d.join(“:”)以更直接、更高效的方式做同样的事情…@nnnnnn,我将其拆分,并使用slice和map()只获取前两个元素。现在我添加了PM,AM,就像使用“消防车”一样,你可以使用“灭火器”。。。这就是@nnnnnn的要点,为什么要将
.map()
与一个条件一起使用,以仅实际操作数组中的第一项?结果字符串末尾的“AM”或“PM”在哪里?因为16是第一个元素,我要把它转换成4,下一部分就可以了。你不需要对它做什么,所以只要返回它就行了。我想说的是,如果你知道只想修改第一个元素,那么使用
.map()
并遍历整个数组有点笨拙<代码>var d=“16:06:59”。拆分(“:”);如果(d[0]>12)d[0]=12;d=d.join(“:”)