При работе с датами на JS возникают ошибки

157
11 ноября 2018, 10:30

date1 присваиваю текущее время. Потом date2 присваиваю date1 и добавляю 1 год, почему date1 при этом тоже увеличивается на 1 год? Связано ли это с тем, что обеим переменным присваивается одна и та же ссылка на new Date() и любые манипуляции будут менять дату в одном и том же месте.

Как это обойти, если нужно допустим организовать период с интервалом в 1 год?

var date1 = new Date(); 
console.log('Дата 1', date1); 
var date2 = date1 
console.log('Дата 2', date2) 
 
date2.setFullYear(Number(date2.getFullYear() + 1)); 
console.log('Дата 2 после прибавления 1 года', date2) 
console.log('Дата 1 ', date1)

Answer 1

Да, связано с этим.

var date1 = new Date(); 
console.log('Дата 1', date1); 
var date2 = new Date(date1); // !!! 
console.log('Дата 2', date2); 
 
date2.setFullYear(Number(date2.getFullYear() + 1)); 
console.log('Дата 2 после прибавления 1 года', date2); 
console.log('Дата 1 ', date1);

READ ALSO
Не работает @media запрос

Не работает @media запрос

Есть код, хочу добавить медиа-запрос с разрешением 992pxСмотрю через инспектор кода, но все как было, так и есть - стили медиа не применились

210
Заполнение пользовательского SVG progress bar

Заполнение пользовательского SVG progress bar

В своей простейшей форме я хочу сделать страницу загрузки, такую как на этом сайте

175
Верстка текста в треугольнике

Верстка текста в треугольнике

Подскажите как сверстать вот такой треугольник (смотрите на фото), что-бы в нем был текст и что-бы все заголовки были выровнены правильноПыталась...

191
Работа с объектом, сохраненным в сессии, на странице jsp

Работа с объектом, сохраненным в сессии, на странице jsp

В session хранится List<Task>Я хочу выводить объект task, после чего проверять значение некого атрибута, и если оно равно заданному значению, то добавлять...

174