카테고리 없음

javascript to do 리스트 응용 (2) localstorage 데이터 사용

고기고기물고기 2022. 4. 5. 04:22

todo.js

const TODOS_KEY = "todos"

const getToDos = localStorage.getItem(TODOS_KEY);

function sayHello(item) {
 console.log("this is the turn of", item);
}

if(getToDos !== null){
    const parsedToDos = JSON.parse(getToDos);
    parsedToDos.forEach(sayHello);
}

 

 

  • javascript to do 리스트 응용 (1)에서 localstorage JSON.stringify 로 저장해서 localstorage.getItem 으로 불러오는 작업과 localstorage에 있는 데이터를 JSON.parse로 배열로 만들어주는 작업

 

 

JSON.parse() - JavaScript | MDN

JSON.parse() 메서드는 JSON 문자열의 구문을 분석하고, 그 결과에서 JavaScript 값이나 객체를 생성합니다. 선택적으로, reviver 함수를 인수로 전달할 경우, 결과를 반환하기 전에 변형할 수 있습니다.

developer.mozilla.org

 

 

 

  • function sayHello 해당 함수를 간단하게 나타내는 방법도 가능
const TODOS_KEY = "todos"

const getToDos = localStorage.getItem(TODOS_KEY);

if(getToDos !== null){
    const parsedToDos = JSON.parse(getToDos);
    parsedToDos.forEach((item) => console.log("this is the turn of", item));
}

 

localStorage 를 불러와서 List 추가

const toDoForm = document.getElementById("todo-form");
const toDoInput = toDoForm.querySelector("input");
const toDoList = document.getElementById("todo-list");

let toDos = [];

const TODOS_KEY = "todos"

function paintToDo(newTodo){
    const li = document.createElement("li");
    const span = document.createElement("span");
    const button = document.createElement("button");
    button.innerText = "✂";
    button.addEventListener("click", deleteToDo)
    li.appendChild(span);
    li.appendChild(button);
    span.innerText = newTodo;
    toDoList.appendChild(li);

}

const getToDos = localStorage.getItem(TODOS_KEY);

if(getToDos !== null){
    const parsedToDos = JSON.parse(getToDos);
    toDos = parsedToDos;
    parsedToDos.forEach(paintToDo);
}
  • 처음에 LocalStorage를 불러와 paintToDo forEach 문으로 통해 리스트를 추가 시켜준다

 

 

※ forEach 문 : forEach() 메서드는 배열에 활용이 가능한 메서드로, 파라미터로 주어진 함수를 배열 요소 각각에 대해 실행하는 메서드이다.

 

https://bigtop.tistory.com/58

 

[JavaScript] 자바스크립트 forEach 메서드 이해하기

ForEach 메서드란? forEach() 메서드는 배열에 활용이 가능한 메서드로, 파라미터로 주어진 함수를 배열 요소 각각에 대해 실행하는 메서드이다. map() 메서드와 거의 비슷하지만 차이점은 따로 return

bigtop.tistory.com