Javascript MomentJS:问题减去分钟
这是部署在Parse.com CloudCode上的我的代码:Javascript MomentJS:问题减去分钟,javascript,date,momentjs,Javascript,Date,Momentjs,这是部署在Parse.com CloudCode上的我的代码: var now = new Date() var then = moment(now).subtract(20, "minutes").toDate() console.log(now) console.log(then) 为什么现在===然后 我做错了什么?我不知道你错了,但对我来说,这是正确的。没有问题 >var now = new Date() >var then = moment(now).subtract(
var now = new Date()
var then = moment(now).subtract(20, "minutes").toDate()
console.log(now)
console.log(then)
为什么<代码>现在===然后<代码>
我做错了什么?我不知道你错了,但对我来说,这是正确的。没有问题
>var now = new Date()
>var then = moment(now).subtract(20, "minutes").toDate()
>console.log(now)
>console.log(then)
VM145:5 Thu Jan 21 2016 17:26:48 GMT+0100 (CET)
VM145:6 Thu Jan 21 2016 17:06:48 GMT+0100 (CET)
undefined
>now === then
false
我也有同样的问题,不得不做类似的事情:
const now = new Date()
const nowCopy = new Date()
const then = moment(nowCopy).subtract(20, "minutes").toDate()
console.log(now)
console.log(then)
我知道这不是最优雅的解决方案,但当您对“now”变量执行操作以获取“then”变量时,您的“now”变量似乎发生了变异。我刚刚面对这个问题并解决了它 @rishikarri是对的,这一刻正在发生变化 所有的时刻都是可变的。如果你想要一个瞬间的克隆,你可以隐式或显式地这样做 作为他的回答的替代方案,并供将来参考,我建议使用
clone
作为解决方案
有两种方法可以克隆一个瞬间(根据):
使用力矩()
:
var a=力矩([2012]);
var b=力矩(a);
a、 年份(2000年);
b、 年份();//2012
使用.clone()
:
var a=力矩([2012]);
var b=a.clone();
a、 年份(2000年);
b、 年份();//2012
所有的功劳都归于文档。试试这个,我觉得很好用
让startTime=moment().format('LT');
让我们减去=时刻(新日期())。减去(5,“分钟”)。格式('LT')代码>我再试了一次,检查了所有内容,但仍然不适用于我:(你使用的是什么浏览器?