Javascript 当我格式化两个不同的时间时,它们都是同时出来的,有办法解决这个问题吗?

Javascript 当我格式化两个不同的时间时,它们都是同时出来的,有办法解决这个问题吗?,javascript,reactjs,momentjs,Javascript,Reactjs,Momentjs,当格式化两个不同的时间时,两个时间都显示为同一时间。我用的是h:mm:ssa correctTime(time) { var convertedTime = moment().format("h:mm:ss", time); return convertedTime; } 进入的2次: 2019-10-03T11:00:00 2019-10-03T11:20:00 出现的2次: 1:13:55 1:13:55 我想得到的是: 11:00:00 11:20:0

当格式化两个不同的时间时,两个时间都显示为同一时间。我用的是h:mm:ssa

   correctTime(time) {
    var convertedTime = moment().format("h:mm:ss", time);
    return convertedTime;
  }
进入的2次:

  • 2019-10-03T11:00:00
  • 2019-10-03T11:20:00
出现的2次:

  • 1:13:55
  • 1:13:55
我想得到的是:

  • 11:00:00
  • 11:20:00
有什么我做得不对吗?

当您使用
moment()
构造函数时,它会创建一个表示当前时间的moment实例。因此,请改为使用创建一个具有您提供的时间的实例

然后使用format方法格式化该实例,并将日期格式作为第一个也是唯一的参数

var格式=力矩('2019-10-03T11:20:09')。格式(“h:mm:ss”);
console.log(格式化)

执行此操作时:

moment().format("h:mm:ss", time)
您正在格式化当前时间

您要做的是格式化变量“time”

如果变量“time”已经是一个moment,只需调用time.format(“h:mm:ss”),如果它是javascript日期,则将其转换为moment,然后调用format方法。

moment()
返回当前日期时间

因此,当您在当前日期格式化时,它将返回本地时区的当前日期


时刻(时间)。格式(“hh:mm:ss”)
这是正确的格式。

你应该这样使用时刻:
时刻(“2019-10-03T11:00:00”)。格式(“hh:mm:ss”),