Когда я пытаюсь узнать функциональность setDate(), setTime() даты javascript, я столкнулся с этой проблемой.
<script>
var date1 = new Date();
var date2 = new Date(1991,4,11);
var date3 = new Date(1992,4,11);
date3 = date1;
date2 = date1;
date2.setDate(date2 .getDate() + 40);//im changing only date2 value using setDate()
//print values
</script>
Думаю, результат будет таким:
Пт, 04 июля 2014 г.
Ср, 13 августа 2014 г.
Пт, 04 июля 2014 г.
Но на выходе все переменные даты имеют одинаковое значение:
Ср, 13 августа 2014 г.
Ср, 13 августа 2014 г.
Ср, 13 августа 2014 г.
Если я делаю аналогичный код с целочисленными переменными, они работают так, как я думаю (все переменные int имеют разные значения).
Сводка вопросов
- Чем отличается присвоение даты и присвоение номера?
- Почему и как javascript setDate() отслеживает другие переменные даты?
- И последнее, но не менее важное: Что мне нужно сделать, если я хочу изменить только значение date2 с помощью этих назначений?
Заранее спасибо.