본문 바로가기

Web Code

Javascript Local & Session Storage

Javascript Sec 3, Lecture 32

Local & Session Storage

>> app.js file

 

 

// set local storage item

app.js

localStorage.setItem('name', 'John');

// 브라우즈 내부에 스토리지를 통하여 값을 넣고 읽고

// set session storage item

sessionStorage.setItem('name', 'Beth');

 

// remove from storage

localStorage.removeItem('name');

 

// get from storage

const name  = localStorage.getItem('name');

console.log(name);

 

localStorage.setItem('age', '30');

const age = localStorage.getItem('age');

console.log(name, age);

 

// clear local storage

localStorage.clear();

console.log(name, age);

 

document.querySelector('form').addEventListener('submit', 

function(e){

  console.log(123);

  const task = document.getElementById('task').value;

  

  let tasks;

  

  if(localStorage.getItem('tasks') === null {

    tasks = [];

  } else {

    // tasks = localStorage.getItem('tasks'); 

    tasks = JSON.parse(localStorage.getItem('tasks')); // JSON 파일로 만들기..

  }

 

  tasks.push(task); // 배열변수에 값을 넣고

 

  localStorage.setItem('tasks', JSON.stringify(tasks));

  

  localStorage.setItem('task', task);

  alert('task saved');

  e.preventDefault();

});

 

const tasks = JSON.parse(localStorage.getItem('tasks')); // JSON 읽기

 

tasks.forEach(function(task){

  // TODO 

  console.log(tasks); // 읽은것 출력...

 

});

 

 

 

 

index.html

<!DOCTYPE html>
<html lang="en">

<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<!--<link rel="stylesheet" href="css/materialize.min.css">-->
<!-- Compiled and minified CSS -->
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/css/materialize.min.css">

<link href="https://maxcdn.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css" rel="stylesheet" integrity="sha384-wvfXpqpZZVQGK6TAh5PVlGOfQNHSoD2xbE+QkPxCAFlNEevoEH3Sl0sibVcOQVnN"
crossorigin="anonymous">
<title>Task List</title>
</head>

<body>
<div class="container">
<div class="row">
<div class="col s12">
<div id="main" class="card">
<div class="card-content">
<span class="card-title">Task List</span>
<div class="row">
<form id="task-form" action="index.php">
<div class="input-field col s12">
<input type="text" name="task" id="task" value="">
<label for="task">New Task</label>
</div>
</div>
<button type="add" class="btn">Add</button>
</form>
</div>
</div>
</div>
</div>
</div>
</div>
<script src="https://code.jquery.com/jquery-3.2.1.js" integrity="sha256-DZAnKJ/6XZ9si04Hgrsxu/8s717jcIzLy3oi35EouyE=" crossorigin="anonymous"></script>
<!-- Compiled and minified JavaScript -->
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.2/js/materialize.min.js"></script> <!--<script src="js/materialize.min.js"></script>-->
<script src="app.js"></script>
</body>

</html>

 

 

'Web Code' 카테고리의 다른 글

UI & Remove, Filter  (0) 2017.12.30
UI & Add Task Items  (0) 2017.12.30
Javascript Event Bubbling & Delegation  (0) 2017.12.29
Javascript Mouse Event  (1) 2017.12.28
Javascript Event  (0) 2017.12.28