2015-08-13 2 views
1
var now = moment(); 
var fiveMinutesLater = now.add(5, 'minutes'); 
now === fiveMinutesLater // --> true 

Из вышеизложенного, now и fiveMinutesLater являются той же ссылкой на объект и содержат то же значение.Как добавить время по значению в Moment.js?

Вместо того, чтобы изменять исходный объект момента, могу ли я получить add(), возвращая новый объект с новым значением?

То есть, после строки 2, fiveMinutesLater действительно на 5 минут позже, чем now.

+0

Сохраните изменения в другом var и измените это другое, но не оригинальное. –

ответ

0

Clone it. Попробуйте следующее:

var fiveMinutesLater = moment(now).add(5, 'minutes'); 
+0

Спасибо, я забыл упомянуть, что я уже пробовал это обходное решение. Но я заметил, что клонирование приведет к проблеме эффективности, особенно с циклом – kit

+0

@ kit - вы попросили новый объект: «* ... Могу ли я добавить(), возвращая новый объект с новым значением ... *", но теперь вы не хотите новый объект? – RobG

+0

Все в порядке и на самом деле работает, я просто надеюсь, что будут другие решения. – kit

Смежные вопросы