How to Use Local Storage in JavaScript

Поділитися
Вставка
  • Опубліковано 1 сер 2024
  • By using Local Storage in JavaScript, you are able to store simple data persistently for your web application directly through the web browser itself - no PHP needed!
    Data is stored using key-value pairs, string-string. This makes it more than capable of storing basic data which is the intention and recommended use of Local Storage.
    I wouldn't recommend using Local Storage for large scale applications because even though the data is persistent, it isn't guaranteed to stay there and is only specific on that particular machine.
    In this video I show you the basics of using Local Storage as well as a mini application that prints out the data stored inside the Local Storage.
    For your reference, check this out:
    developer.mozilla.org/en-US/d...
    0:00 Overview
    1:30 Looking at the JavaScript
    3:05 Adding data to Local Storage
    4:20 Removing data from Local Storage
    4:52 Getting data from Local Storage
    6:28 Exploring a few extra methods
    7:16 Creating the input form
    14:58 Wrapping up
    Follow me on Twitter @dcode!
    If this video helped you out and you'd like to see more, make sure to leave a like and subscribe to dcode!
    #dcode #javascript #webdev

КОМЕНТАРІ • 221

  • @dcode-software
    @dcode-software  4 роки тому +11

    Check out my similar video on Session Storage:
    ua-cam.com/video/RxUc6ZWwgfw/v-deo.html

  • @guardian962
    @guardian962 2 роки тому +16

    I've been struggling with JS & localStorage for MONTHS. This video really helped me understand the basics in a way no one else has. Thank you so much! Definitely going to share this with anyone else struggling

  • @luciusrex
    @luciusrex 6 років тому +46

    I google for a web dev concept, i find dcode, i click and watch. Once again, concise and with examples all in plain js, excellent work! Keep it up!

  • @farhanyousaf5616
    @farhanyousaf5616 5 років тому +6

    I love the simplicity and approach of demonstrating it.

    • @dcode-software
      @dcode-software  5 років тому

      No worries mate 😁

    • @farhanyousaf5616
      @farhanyousaf5616 5 років тому

      @@dcode-software You should do a more esoteric video on Server Side Events as an intro. And for fuller examples for the ral world, heck make it a course! I'd pay for it =) Have you played with Go?

  • @kshitizshah6685
    @kshitizshah6685 3 роки тому +1

    I am getting goose bumps from this channel.. Thanks a lot you teach extreamely good.. the best programming channel and u are great teacher. Sir please keep on uploading web-development lessons.. !!Love from nepal... BIG FAN

  • @arshiasaleem5005
    @arshiasaleem5005 4 роки тому +5

    Amazing tutorial. You made it so much easy and simplified. Thanks man. Keep up the good work.

  • @vincenttok
    @vincenttok 2 роки тому

    thank you dcode for making this video. it's really help to undestand more about local storage and how to use it using Javascript and your explanation is easy to understand for newbie like me who learnt to program for very first time so thank you again and have a nice day

  • @ulaganathanmahadevan6254
    @ulaganathanmahadevan6254 4 роки тому +5

    Simple and awesome demo! Easy to follow and very useful. Thank you!

  • @adagordon7029
    @adagordon7029 4 роки тому

    Thank you very much for your lesson, it's pretty laconic & clear!

  • @judaspriest33715
    @judaspriest33715 4 роки тому +4

    Cleanest explanations on youtube hands down!

  • @nguyendat4275
    @nguyendat4275 2 роки тому

    The best teacher on youtube, respect!

  • @MrPurpledin0
    @MrPurpledin0 6 років тому +12

    Thank you. The most useful tutorial i could find. you're good at this

  • @rioma3112
    @rioma3112 3 роки тому

    Thanks man. This is a very good tutorial. Give this man props 👏🤝

  • @DubZenStep
    @DubZenStep 3 роки тому +7

    For those who are getting the innerHtml error: watch carefully here 10:32.
    You are getting "null" because you probably set "lsOutput" as a class instead of an id of the div.
    If you want to use classes instead of id's, you can use "const lsOutput = document.querySelector(".lsOutput");"

    • @YawiKey
      @YawiKey 8 місяців тому

      Two hours searching for this on StackOverflow and no answers, thank you 🙏

  • @ercntreras
    @ercntreras 3 роки тому

    A complete explanation and very clear. 🙏🏼

  • @chrissythompkin2089
    @chrissythompkin2089 6 років тому +12

    Great tutorial, you're a natural!

  • @draganvidakovic4140
    @draganvidakovic4140 Рік тому

    Very good video about Local Storage. Clear and Direct.

  • @jogoeire
    @jogoeire 3 роки тому

    Nice straightforward tut.

  • @samcodes2912
    @samcodes2912 3 роки тому

    love the explanation. straight to the point 👍

  • @bimalakamani7001
    @bimalakamani7001 3 роки тому +1

    I was looking for this video for months I got finally thank you very much

  • @ayen0449
    @ayen0449 2 роки тому

    you're appreciated for this masterpiece. made this so easy to understand: THANKS

  • @akshayrc
    @akshayrc 3 роки тому

    Very well explained and demonstrated.. Thanks!

  • @mrjeevy7720
    @mrjeevy7720 8 місяців тому

    Really good explanation, cheers!

  • @niloofar9113
    @niloofar9113 2 роки тому

    This was awesome! Thank you for the simplicity~ :)

  • @sdwhitesox8039
    @sdwhitesox8039 5 років тому +3

    Good, clear explanation. Could you please do a tutorial on how to perform a certain action if the user has visited the site before?

  • @adrianibarra9589
    @adrianibarra9589 3 роки тому

    Thanks man!!! This really helped me finish my project! Great tutorial

  • @Jc-handle-with-care
    @Jc-handle-with-care 3 роки тому

    Thanks that s an amazing tutorial! i really hope you re a teacher , you got skills!

  • @Moh_ha
    @Moh_ha 4 роки тому +3

    This was very helpful thank you man!

  • @lulusaikou221
    @lulusaikou221 2 роки тому

    Useful~ Thanks for teaching❤

  • @inayathkhan100
    @inayathkhan100 3 роки тому

    Very useful tutorial, you'r the BEST!

  • @FlexOffenders
    @FlexOffenders 5 років тому +2

    Great video ! Thanks for the help.

  • @mastercode7851
    @mastercode7851 4 роки тому

    great stuff , thanks bro

  • @umbertopolanco4159
    @umbertopolanco4159 2 роки тому

    Thank you very much for sharing your knowledge. This helped me greatly. Do you have a video for the same but for server side?

  • @MrAer85
    @MrAer85 3 роки тому

    Got it working! Awesome!

  • @Mohammad-lu1pp
    @Mohammad-lu1pp 3 роки тому

    thank u so much, that will help improve my project a lot

  • @hopehope5064
    @hopehope5064 3 роки тому

    Thank you a lot you really came through

  • @DeRhazzify
    @DeRhazzify 4 роки тому

    How can you save the positon of drag & drop objects in localStorage? For example when you move a note on a board and then save its new location when you reload.

  • @samuelrajh9755
    @samuelrajh9755 3 роки тому +4

    can you make a video on how to store checkbox checked even after refreshing the page in local storage please ?

    • @AdrianaStAubyn
      @AdrianaStAubyn 3 роки тому

      have you found out how to do that? if so help a sister out haha

    • @paulhorowitz3340
      @paulhorowitz3340 3 роки тому

      @@samuelrajh9755 She asked you if you have found the answer yet. And if you have found the answer, could you please share with her.

    • @samuelrajh9755
      @samuelrajh9755 3 роки тому

      @@paulhorowitz3340 oh thanks

    • @samuelrajh9755
      @samuelrajh9755 3 роки тому +2

      @@AdrianaStAubyn $(function(){
      $('[type="checkbox"]').each(function () {
      var $this = $(this),
      name = $this.attr('name');
      $this.prop('checked', localStorage[name] === 'true');
      });
      });
      $('[type="checkbox"]').on('change', function() {
      var $this = $(this),
      name = $this.attr('name');
      localStorage[name] = $this.is(':checked');
      });
      $('input').on('change', function() {
      localStorage.input = $(this).is(':checked');
      console.log($(this).is(':checked'));
      });

  • @jimh7604
    @jimh7604 5 років тому

    When I insert a key and a value and press insert I get a window reload and the Local Storage fieldset doesn't get updated. Why is that? If I remove location.reload only then it works fine.

  • @phodzonditsheni7914
    @phodzonditsheni7914 Рік тому

    Great Video. Keep it up🔥🔥

  • @Raazor2232
    @Raazor2232 3 роки тому

    Oh that upward inflection at the end of sentences. A fellow aussie

  • @dan112in69
    @dan112in69 4 роки тому

    nice explained. thx

  • @chadrackkyungu2167
    @chadrackkyungu2167 3 роки тому +1

    thank you it's was helpfull

  • @doston38
    @doston38 4 роки тому +1

    Hello bro, this is a very useful course. thank you

  • @ArchanaKumari-ci1sx
    @ArchanaKumari-ci1sx 3 роки тому +1

    Tip:
    Use autosave and liveserver for automatic saving as well as refreshing the page.

  • @el9delcielo
    @el9delcielo 4 роки тому

    i was expecting more than ONE item at the end. Given how you made a loop and all. Would also like to know why you would declare all variables as cons instead of just var? Other than that, great video. Thank you

  • @noobCoder26
    @noobCoder26 2 роки тому

    thanks for the video

  • @paulmonde6896
    @paulmonde6896 6 років тому +2

    Great ! Thx man.

  • @mohammadbelalalzoubi8102
    @mohammadbelalalzoubi8102 6 років тому +1

    It is great. Thank you.

    • @dcode-software
      @dcode-software  6 років тому

      All good mate cheers good to see it helped you!

  • @abhisheaka3277
    @abhisheaka3277 3 роки тому

    Thanks man! , can you explain how can we update and delete the data which we entered?

  • @aryanheravitalemi8293
    @aryanheravitalemi8293 3 роки тому

    Very helpful, thank you

  • @user-pg5xz3lq5i
    @user-pg5xz3lq5i 4 роки тому +1

    You are great teacher
    Thanks a lott

  • @Rs-nh7zx
    @Rs-nh7zx 3 роки тому

    Great tutorial! Just wondering, how can I remove items with a button ? Like remove button ?

  • @saisrisai9649
    @saisrisai9649 3 роки тому

    Thank you so much.

  • @priyaphilip5979
    @priyaphilip5979 2 роки тому

    hi Your video was very helpful, though I have a problem...I didnt get the last line of the code and on VSC i didnt get the output as well(displaying on the div tag)...

  • @martinkarugaba
    @martinkarugaba 2 роки тому

    Thanks man.

  • @josiahtobas9172
    @josiahtobas9172 4 роки тому +4

    Thanks a lot man, I'm currently looking for solutions of mimicking php sessions on the client side. Basically to really have separation of UI and Application layer logic. God bless.

  • @lunleong4438
    @lunleong4438 4 роки тому

    How to get the update data after update the existing value in the localstorage without reload page?

  • @d0ma1n
    @d0ma1n 2 роки тому

    Hi, is it possible to put function in localstorage that will load when it redirects to other page? I have a button on index.html and it needs to redirect on other page, and invoke a function, or button that has a function? Thanks

  • @umbertopolanco4159
    @umbertopolanco4159 Місяць тому

    How can I keep adding to the same key more data? like if it was an Array that I keep pushing data to it.

  • @sounak2009
    @sounak2009 5 років тому

    Hi Dom.. The localstorage doesn't work on file protocol right?

  • @amjadshadid90
    @amjadshadid90 3 роки тому

    great video, thank you

  • @codermans2350
    @codermans2350 4 роки тому +1

    is there a way to add the values from local Storage?

  • @rumeysamert8373
    @rumeysamert8373 4 роки тому +3

    question: do the items show up on the screen once you close the tab and open it again later? I know that he said that it would be saved in the local storage and stay there for a long time but I still wanted to ask.

  • @asmapatel6127
    @asmapatel6127 2 роки тому

    If I have live chat integrated with my app, can I store values from that live chat and somehow display it on my app page?

  • @ragunath7950
    @ragunath7950 3 роки тому

    Final in inner.html is it essential to use $ for key and value symbol there.

  • @henilpatel9249
    @henilpatel9249 3 роки тому

    Hi, I recently came up with some questions. So when you stored the user input in the local storage and then output it on the screen.
    - Can we do that with multiple users' responses, and if so, will all that users' data get deleted after refreshing or closing the webpage.
    - How do we prevent the data from getting deleted everytime we refresh the webpage or close the tab and come back in to see if the results are still stored in.
    Please help me with those 3 questions

  • @Venkatnemala
    @Venkatnemala 4 роки тому

    is it possible to fetch data localhost using inspect element

  • @jvnxs7
    @jvnxs7 3 роки тому

    Nice video, thanks

  • @mauriciozapata3859
    @mauriciozapata3859 3 роки тому

    anyone else getting a cannot read property 'value' for the button onclick function? where is value being declared? I"m only getting the error on the const key = inpKey.value but not on the Const value = inpValue.value. Very strange

  • @ankitkumarjat9886
    @ankitkumarjat9886 4 роки тому +3

    I know the basic things in html css and javascript but I want to learn in more deep like I learn fieldset tag here can you suggest me some source to learn and your videos are awesome.
    Love from india ❤️

  • @tunglam1321
    @tunglam1321 4 роки тому +1

    Great Video and Thank you!
    I have some question here want to ask.
    I want to know why it is worked on using const in the JavaScript assigning the variable, in my knowledge const means assign the variable one time only, but here is running the loop, so it shouldn’t assign one time only.
    I want to know where is my confused concept in const

    • @angelcaru
      @angelcaru 4 роки тому +1

      It isn't actually asigning It multiple times. Because const is block scope, It creates multiple constants

  • @siddharthjadhav3920
    @siddharthjadhav3920 4 роки тому

    Hi , how to read key for google.com. I tried but i am unable to get value for the google website. Please help

  • @ragtop63
    @ragtop63 3 роки тому

    Would localStorage be the proper way to store table data?
    For example, imagine you wrote a script that parses certain pages you browse for specific data. It takes that data and puts it into CSV format with the intent that it can later be read and placed into an HTML table. The amount of rows for the table (CSV) can be over 1000 rows.
    Is localStorage an acceptable solution for this scenario or is there a better method?

  • @emilianomedinaespinoza8822
    @emilianomedinaespinoza8822 Рік тому

    awesome video, by the way what keyboard are you using? Sounds smooth and very comfy xD

  • @truedivan
    @truedivan 5 років тому

    Hello!
    Thsnk u for tutorial =)
    What is that record mean - ${smth} ?

  • @baseplate_462
    @baseplate_462 4 місяці тому

    guy named DOM teaching us web development. Golden💀

  • @rahulsharma7990
    @rahulsharma7990 3 роки тому

    outstanding

  • @tjmcode5187
    @tjmcode5187 2 роки тому

    sir please how does the localstorage function when you host the website.

  • @FrostDrive
    @FrostDrive 2 роки тому

    When I put console.log(localStorage); in the console, or try any methods, I just get undefined

  • @tdreamgmail
    @tdreamgmail 4 роки тому

    Great explanation! Just one question. When I add a few items in, it starts adding them at index 1 (2nd position), so everytime I add something, the list gets more unorganised. Why is this? Or how can one sort it?

    • @dertuman
      @dertuman 4 роки тому +1

      Local storage items get automatically indexed by alphabetical order!

  • @adityajha1889
    @adityajha1889 2 роки тому

    i have a question dcode. What happens when you add another name. Does it replace the other one or does it add another one

  • @lightcode6487
    @lightcode6487 3 роки тому

    So the value stores in LocalStorage but nothing is displaying on the page..

  • @freekiad1931
    @freekiad1931 2 роки тому

    Thanks for the video, and My question is that, We take permission from the user for Read External Storage Data, and when I run this app in my device it asked me for permission but I want to know that when I gave permission to Mobile App read my data, so where and how app developer can read or see user mobile data ?
    Is that user data storage on my online storage server ?

  • @kamola9142
    @kamola9142 2 роки тому

    Thank you

  • @didziszvaigzne7679
    @didziszvaigzne7679 3 роки тому

    What theme are you using?

  • @lingsike3193
    @lingsike3193 6 років тому +1

    Hi I have a question about this tutorial. When I did the last step as "output.innerHTML += `${key}: ${value} `;" my console shows innerHTML as property undefined innerHTML as null. I added if state to check document.getElementById('output') !== null
    error went away but the div id ="output" won't show any date being added to localStorage

    • @dcode-software
      @dcode-software  6 років тому

      Hey there, can you post your code? I'm struggling to understand

    • @user-pd1bq6qv9b
      @user-pd1bq6qv9b 5 років тому

      Add the whole script in windowonload=function{
      Your whole script
      }

  • @deki90to
    @deki90to 3 роки тому

    when I type location.reload(); it keep realoding the page, why?

  • @lonewolfcoding5208
    @lonewolfcoding5208 3 роки тому

    yes it works but i need more storage like sqlite
    and i want to access internal storage of phone

  • @Andrii87
    @Andrii87 3 роки тому

    does data go away, when you close browser?

  • @lightcode6487
    @lightcode6487 3 роки тому

    So That means the input you're going to create is going to be saved to the localStorage and in your code, it will also display on the page. What if I refresh it? Will the input still be displayed? And nice video!

  • @sumi-p5660
    @sumi-p5660 2 роки тому

    How do i get unique id in localstorage?

  • @cafelutsa_
    @cafelutsa_ 4 роки тому

    what if i want to store more names?

  • @naqashsakhawat4437
    @naqashsakhawat4437 5 років тому

    I am facing error "Uncaught TypeError: Cannot set property 'onclick' of null" while i am just following your code for practice.

    • @dcode-software
      @dcode-software  5 років тому +1

      Make sure you have the element. Check and ensure your IDs match up

  • @kgaming7599
    @kgaming7599 5 років тому

    Will this work as a live chat 💭? Like document.body.innerHTML += localStorge.whatever?

    • @sounak2009
      @sounak2009 5 років тому

      You can put almost anything on the DOM. The contents of localStorage need to be parsed into js objects and you can retrieve the data from that object using the dot operator.

  • @ellanteladar1990
    @ellanteladar1990 Рік тому +1

    Sir dcode how do I create a remove button for localStorage.removeItem()?

    • @murgan4307
      @murgan4307 Рік тому

      In local storage already into mark is there you can see that one

  • @SuPaMaNallday
    @SuPaMaNallday 3 роки тому +1

    FYI: Another way to add local storage and clear them (no code required).
    1. Open Dev Tools(f12).
    2. Select “Application”.
    3. Select “Local Storage” (located under the Storage section).
    4. Select Select the domain name that your on.
    5. Right Click underneath the “Key” field.
    6. Select “Add new” to enter a new key followed by a value. Or Select delete to remove and clear your storage.
    7. Above value there’s a cancel icon you can click on to clear all of your local storage.

  • @mrfrontend1
    @mrfrontend1 Рік тому

    💥🔥

  • @MohammadAli-pq9uu
    @MohammadAli-pq9uu 4 роки тому +1

    GREAT

  • @australiansmoker4328
    @australiansmoker4328 4 роки тому

    Im getting localStorage.key isnt a function
    how do you fix this???

    • @MrChessra
      @MrChessra 4 роки тому +2

      input, button {
      padding: 7px;
      height: 40px;
      width: 200px;
      }

      fieldset {
      margin-bottom: 20px;
      margin: 200px;
      }





      Insert Data


      Insert DAta



      Local Storage





      const inpKey = document.getElementById("inpKey");
      const inpValue = document.getElementById("inpValue");
      const btnInsert = document.getElementById("btnInsert");
      const lstOutput = document.getElementById("lstOutput");

      btnInsert.onclick = function(){
      const key = inpKey.value;
      const value = inpValue.value;

      if(key && value){

      localStorage.setItem(key,value);
      location.reload();
      }
      };
      for (let i=0; i < localStorage.length; i++){
      const key = localStorage.key(i);
      const value = localStorage.getItem(key);
      console.log(key);
      console.log(value);

      lstOutput.innerHTML += key +" : " +value +'';
      }