localStorage (нужна помощь не работает должным образом) - Javascript Chrome расширение - PullRequest
0 голосов
/ 10 апреля 2020
var itemName;
var itemSize;
var itemType;
var itemColor;

window.onload = function() {
    document.getElementById('item_save').onclick = function() {

        var item_name = document.getElementById('item_name').value;
        var item_size = document.getElementById('item_size').value;
        var item_type = document.getElementById('item_type').value;
        var item_color = document.getElementById('item_color').value;

        console.log(item_name + "\t" + item_size + "\t" + item_type + "\t" + item_color + "\tsaving...");

        localStorage.setItem(itemName, item_name);
        localStorage.setItem(itemSize, item_size);
        localStorage.setItem(itemType, item_type);
        localStorage.setItem(itemColor, item_color);


    }

    var getItemName = localStorage.getItem(itemName);
    var getItemSize = localStorage.getItem(itemSize);
    var getItemType = localStorage.getItem(itemType);
    var getItemColor = localStorage.getItem(itemColor);

    console.log(getItemName + "\t" + getItemSize + "\t" + getItemType + "\t" + getItemColor + "\tsaved...")
}

Скажите, если я введу 1 для ввода item_name, 2 для ввода item_size, 3 для ввода item_type и 4 для ввода item_color, он будет отображаться в консоли как:

"4 4 4 4 сохранено ...

1 2 3 4 сохранение ... "

Мне было интересно, почему он также сначала отображает сохраненный файл console.log и делает все числа 4 в сохраненном console.log, нужен совет.

1 Ответ

2 голосов
/ 10 апреля 2020

Консоль «сохранения» появляется при событии «щелчок».

Консоль «сохранения» появляется при событии «загрузка».

Конечно, загрузка выполняется перед любым другим событием запущен, понравился "щелчок".

И, как сказано @Pointy, первый параметр "saveItem" и "getItem" должен быть строкой.

Таким образом, вы сохранили все под ключом "undefined" и получил все под ключом "undefined". Затем вы получили только последнее сохраненное значение 4 и четвертый раз.

...