alert( getSecondsToday() );
function getSecondsToday() {
let currentTime = new Date();
let startTime = currentTime;
startTime.setHours(0,0,0);
return Number(currentTime) - Number(startTime);
}
Почему после выполнения строки startTime.setHours(0,0,0); обнуляются значения у currentTime?
Первая строчка возвращает ссылку на объект даты, вторая строчка просто записывает ту же ссылку в новую переменную. В итоге, мы имеем один объект, одну ссылку, и две переменных. Для того, чтобы сделать их независимыми друг от друга, нужно создать новый объект даты, основываясь на первой переменной. Так у нас будет 2 ссылки на 2 разных объекта
let currentTime = new Date();
let startTime = new Date(currentTime);
потому что Date
- объект и при присваивании переменной присваивается лишь ссылка на него, так что сам объект не меняется, тут нужно копирование объекта
function getSecondsToday() {
let currentTime = new Date();
let startTime = new Date(currentTime.getTime());
startTime.setHours(0,0,0);
return Number(currentTime) - Number(startTime);
}
Возникла такая проблемаСайт отправляет AJAX запрос, получая информацию (имя, фамилия и т