• 로그인
  • 장바구니에 상품이 없습니다.

home2 게시판 Vue 게시판 localstorage 질문입니다

localstorage 질문입니다

6 글 보임 - 1 에서 6 까지 (총 6 중에서)
  • 글쓴이
  • #15578

    최재문
    참가자

    포트폴리오에 앱 만들면서 로컬스토리지를 쓰는데 궁금증이 생겨서 질문드립니다.


    요런식으로 선택한 할 일을 삭제하면

    체크된 할 일만 쏙 지워지게끔 코드를 짰는데요

    코드가 사실 
    1. 선택되지 않은 투두리스트를 필터해서 새로운 배열로 저장한다
    2. 로컬스토리지의 전체 todolist를 삭제한다
    3. 선택되지 않은 투두리스트를 todolist에 넣는다
    라는 로직으로 되어있읍니다.
    작동은 잘 되는데 찝찝한게 있어서요
    만약에 투두리스트가 1억개 있는데 내가 삭제하려고 하는건 1개밖에 없는데
    1억개를 전부 삭제하고 99,999,999개를 새로 setItem 하는게 넘나 비효율적이잖아여
    그래서 splice나 다른 메소드로 해보려고 했으나,
    localstorage에 저장된 데이터 자체에 접근해서 수정할 방법을 모르겠습니다
    이럴땐 코드를 어떻게 짜면 좋을까요?

    코드입니다

    #15581

    최재문
    참가자

    그리고 ES6 강의에 배열 메소드 map, filter, reduce 에 대해서 강의 추가해주실 수 있나여?
    블로그 보고 map이랑 reduce는 이해했는데 reduce는 이해를 못하겄읍니다.. 누산기가 어쩌고 저쩌고 하든데.. 외계어같읍니다...

    #15586

    codingapple
    키 마스터

    localstorage에 저장되는건 무조건 문자라서 첫째 내용만 바꿔라 그런 기능은 없습니다 

    localstorage는 5mb 용량제한도 있어서 많은 데이터 저장하시려면 서버만들고 DB에 저장하는게 옳은 방법입니다

    싫다면 브라우저 내의 indexedDB라는걸 쓰면 용량제한없이 대량의 데이터를 저장하고 async 하게 꺼내쓸 수 있고 index 기능도 제공해서 빠르게 원하는 데이터만 찾을 수 있는데 

    문법이 더러워서 코드 쉽게 바꿔주는 라이브러리를 쓰든 하면 됩니다 

     

    reduce는 array 안에 있는 것들 누적합, 누적곱 이런거 계산하고 싶을 때 사용합니다

    reduce() 안에 함수를 하나 집어넣을 수 있는데 집어넣으면

    array안에 있던 데이터 하나하나에 그 함수를 적용해줍니다 

    그 함수의 첫째 파라미터는 이전 array item에 적용하고나서 return한 값입니다

    둘째 파라미터는 현재 적용되는 array item 값 입니다

    #15589

    최재문
    참가자

    용량제한이 있는건 알았지만 디게 적네요
    빨리 프로젝트 완성하고 node.js 강의를 들어야겠읍니다

    예전에 합구하기나 그런거 할때
    let sum = 0
    sum = sum + a 
    이런식으로 하는것같은 원리인가요?
    sum이 첫째파라미터, a는 둘째파라미터 이겠네요?

    #15595

    codingapple
    키 마스터

    네 맞습니다 

    #15597

    최재문
    참가자

    쉬운 설명 감사합니다 
    근데 언제 써야 할 지를 잘 모르겠네요. 언젠가 써야 될 때가 오겠져.. ㅋㅋ

     

6 글 보임 - 1 에서 6 까지 (총 6 중에서)
  • 답변은 로그인 후 가능합니다.

About

현재 월 700명 신규수강중입니다.

  (09:00~20:00) 빠른 상담은 카톡 플러스친구 코딩애플 (링크)
  admin@codingapple.com
  이용약관
ⓒ Codingapple, 강의 예제, 영상 복제 금지
top

© Codingapple, All rights reserved. 슈퍼로켓 에듀케이션 / 서울특별시 강동구 고덕로 19길 30 / 사업자등록번호 : 212-26-14752 온라인 교육학원업 / 통신판매업신고번호 : 제 2017-서울강동-0002 호 / 개인정보관리자 : 박종흠