Сохраняйте данные навсегда в массиве JavaScript из тега ввода - PullRequest
0 голосов
/ 02 октября 2018

У меня есть число из <input>, которое я хотел бы сохранить в массиве в выбранном месте.Мне удалось сделать это с splice(), но данные, сохраненные в массиве, сбрасываются при перезагрузке страницы.Как я могу сохранить эти данные "навсегда" ?

Это код:

<label for="number">Number to Save</label>
<input type="text" name="number" id="number" value=""/> 

<input type="button" value="click" onclick="myArr.splice(2, 0, number.value);"/>

Ответы [ 2 ]

0 голосов
/ 02 октября 2018

Вы не можете хранить данные вечно.Но вы можете сохранить их в файле cookie.

document.cookie = "username=John Doe; expires=Thu, 18 Dec 2013 12:00:00 UTC";

Подробнее о файлах cookie JS: - https://www.w3schools.com/js/js_cookies.asp

0 голосов
/ 02 октября 2018

Вот простой пример использования localStorage http://jsfiddle.net/nezir/Hn7jc/147/

// Retrieve your data from locaStorage
var saveData = JSON.parse(localStorage.saveData || null) || {};

// Store your data.
function saveStuff(obj) {
    saveData.obj = obj;
    var myArr = [1,2,3,4,5];
    console.log(myArr);
    saveData.some_array = myArr;
    console.log(saveData.some_array);
    saveData.some_array = myArr.splice(2);
    localStorage.saveData = JSON.stringify(saveData);
}

// Do something with your data.
function loadStuff() {
    return saveData.obj || "default";
}

if (saveData.some_array) alert("You were here: " + saveData.some_array);

saveStuff("Stuff");
...