#javascript #date #time
#javascript #Дата #время
Вопрос:
В настоящее время я хочу создать приложение диспетчера контактов, и мне нужно получить текущее время и дату, когда пользователь создает новый контакт. Проблема в том, что я не могу найти способ сохранить текущее время и дату, когда пользователь создал контакт. Я попытался получить текущее время и дату и преобразовать их в JSON, но теперь он обновляется до текущего времени, чего я не хочу, вместо этого я хочу получить текущее время, когда пользователь установил контакт, и сохранить это текущее время. Как я могу добиться этого, используя чистый Javascript.
Попробуйте запустить этот код в первый раз, затем обновите браузер, и вы увидите изменения времени.Таким образом, он не сохраняет время, потому что оно каким-то образом обновляется, как я могу это решить.
HTML
<html>
<head>
<meta charset="utf-8">
</head>
<body>
<button id="btn" onclick="clicked()">Click me</button>
</body>
</html>
JS
const date = new Date();
function clicked() {
localStorage.setItem("currentDate", JSON.stringify(date));
var getDate = JSON.parse(localStorage.getItem("currentDate"));
document.body.innerHTML = getDate;
}
Комментарии:
1.
const currentTime = new Date();
2. @ScottMarcus, который не сохраняет текущую дату и время. Мне нужно получить текущую дату и время и сохранить их. Ваш код просто дает мне текущую дату, но не сохраняет ее.
3. Он сохраняет его. Он сохраняет его в переменной. Вы должны определить, что вы подразумеваете под «хранить». Как долго вы хотите его «хранить»?
4. Я хотел бы сохранить его так, как это делает локальное хранилище. Сохранение этой текущей даты и времени, когда пользователь устанавливает новый контакт в течение длительного времени (навсегда). Поэтому, когда пользователь проверяет наличие контакта, он может видеть дату и время, когда он установил этот контакт.
5. Поэтому сохраните его в localStorage. Сделайте это в момент создания нового контакта:
localStorage.setItem("currentDate", JSON.stringify(new Date());
Ответ №1:
Каждый раз, когда вы нажимаете на кнопку, она устанавливает новую дату и время.
Что вам нужно будет сделать, так это получить сохраненную дату при загрузке. Я создал функцию getDate, которая вызывается как при загрузке страницы, так и при нажатии. Если вы не хотите, чтобы дата повторялась после каждого щелчка, вам нужно добавить div в свой HTML-код и заменить его содержимое с помощью:
document.querySelector("#timediv").innerHTML = theDate;
Ниже приведены функции обновления javascript
function getDate(){
var theDate = JSON.parse(localStorage.getItem("currentDate") || "[]");
document.body.innerHTML = theDate "<br>";
}
function clicked() {
if (!localStorage.getItem("currentDate")) {
localStorage.setItem("currentDate", JSON.stringify(new Date()));
}
getDate();
}
Комментарии:
1. Когда я нажимаю кнопку каждый раз, это дает мне обновленное время (время записи сейчас). Я хочу, чтобы при нажатии кнопки она возвращала то же время, а не обновлялась сама. Поэтому я хочу, чтобы он сохранял текущее время и дату, когда была нажата кнопка, и отображал это время и дату, когда была нажата кнопка. Как я могу это сделать?
2. Большое спасибо, я пытался получить решение в течение нескольких часов.