为了账号安全,请及时绑定邮箱和手机立即绑定

对于每个不循环访问从本地存储读取的阵列

对于每个不循环访问从本地存储读取的阵列

慕妹3242003 2022-09-02 21:34:04
收到一条错误消息,指出“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;             }        }
查看完整描述

1 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

的...of 语句创建一个循环,迭代可迭代对象,包括:内置字符串、数组、类似数组的对象。


您的任务输出在解析后从本地存储检索时是一个对象;使用循环不可迭代for of


尝试将代码更新为:


const taskList = JSON.parse(window.localStorage.getItem("taskList")) 

const taskOutput = taskList ? [taskList] : [];


查看完整回答
反对 回复 2022-09-02
  • 1 回答
  • 0 关注
  • 60 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信