For-each循环未遍历获取本地存储的数组

问题描述 投票:0回答:1

得到一条错误消息,指出“ taskOutput不可迭代”。数组如下所示:

const taskOutput = JSON.parse(window.localStorage.getItem("taskList")) || [];

循环看起来像这样:

 for (const task of taskOutput) {
        const taskEl = document.createElement("div");
        const {participant, duetime, description} = task;

        // PROGRESSION-BAR
        let newDiv = document.createElement("div"); 
        let newBtn = document.createElement("button");
        let btnText = document.createTextNode("Fullfør");
        newBtn.appendChild(btnText);

        newDiv.style.border = "3px solid black";
        newDiv.style.height = "10px";
        newDiv.style.backgroundColor = task.color; 

        newBtn.onclick = function() {
            if(task.color === "red"){
                task.color = "green"; 
                localStorage.setItem('taskList', JSON.stringify(taskOutput)); 

            }
            else if(task.color === "green"){
                task.color = "red"; 
                localStorage.setItem('taskList', JSON.stringify(taskOutput)); 
                newDiv.style.backgroundColor = task.color; 
            }
        }
javascript arrays local-storage
1个回答
0
投票

尝试使用forEach代替for of

taskOutput.forEach(task => {

// your code

});
© www.soinside.com 2019 - 2024. All rights reserved.