我正在从数据库中获取时间为2018-08-15T06:08:55.000Z之类的数据,我想要几分钟并在其中添加5分钟,我尝试使用getMinutes()方法,但抛出错误getMinutes()不是一个功能。
console.log('data as ', obj);
var dt = obj.starttime;
console.log('time from database' , dt);
console.log('getMinutes():' ,dt.setMinutes( dt.getMinutes() + 05 ));
data as { id: 4009,
mid: 1,cid: 41,wid: 7138,oid: null,status: null,options: null,
starttime: '2018-08-15T06:08:55.000Z',duration: null,ordertotal: 50,
counter: null,closetime: null }
time from database 2018-08-15T06:08:55.000Z
Uncaught Error
message: 'dt.getMinutes is not a function',
答案 0 :(得分:0)
将字符串转换为日期
var dt = new Date('2018-08-15T06:08:55.000Z');
console.log(dt.getMinutes());
答案 1 :(得分:0)
dt只是一个字符串,您需要将其转换为日期对象
let dt = '2018-08-15T06:08:55.000Z';
date = new Date(dt);
console.log(date.getMinutes());
答案 2 :(得分:0)
添加这5分钟的“最安全”方法是执行以下操作:
const oldDate = new Date('2018-08-15T06:08:55.000Z')
console.log(newDate);
const updatedDate = new Date(newDate.getTime() + 5*60000);
console.log(updatedDate);
基本上,您将其转换为日期对象,然后使用getTime()将其转换为毫秒/纪元时间。这之后加上5分钟(5 * 60000毫秒)。最后,将其转换回Date对象。
答案 3 :(得分:0)
通过将字符串传递给Date构造函数将字符串转换为Date
。
然后使用date.setMinutes(date.getMinutes() + 5);
添加5分钟:
const date = new Date('2018-08-15T06:08:55.000Z');
date.setMinutes(date.getMinutes() + 5);
console.log(date);
答案 4 :(得分:0)
我可能就是这样,您可能会从db获得字符串形式的时间“ 2018-08-15T06:08:55.000Z”。将其转换为日期格式,并从中获取getMinutes。
let dt = "2018-08-15T06:08:55.000Z"
let myTime = new Date(dt);
console.log(myTime.getMinutes());
以上代码可以解决您的问题。
答案 5 :(得分:0)
我想dt.getMinutes()
可能不起作用,因为dt不是Timeobject。
尝试以下操作:
dt = '2018-08-15T06:08:55.000Z'
let dt = new Date (dt);
console.log('getMinutes():' ,dt.setMinutes( dt.getMinutes() + 05 ));
答案 6 :(得分:0)
这取决于您如何初始化“ dt”。 试试这个:
let dt_new = new Date(dt);
let min = dt_new.getMinutes();
您需要将dt初始化为日期对象