2016-09-18 3 views
-1

로컬 저장소에 버튼 클릭을 저장하려고하므로 사용자가 버튼을 클릭하면 사용자가 클릭 한 날짜와 시간이 로컬 저장소에 저장됩니다. 그러나 현재 창을 닫으면 데이터가 새 날짜로 덮어 쓰여지고 다시 열리고 두 번째 버튼이 클릭됩니다. 내가 원했던 것은 로컬 스토리지가 과거의 데이터를 덮어 쓰지 않고 모든 단일 버튼 클릭을 저장하는 것입니다. JSON stringify가 작업을 수행해야하지만 작동하지 않는다고 들었습니다.로컬 저장소에 버튼 클릭 저장

function saveData(){ 
     var date= new Date(); 
     window.localStorage.setItem("date", JSON.stringify(date)); 
     alert("Your data is stored"); 
    } 

답변

4

당신은 아마

function saveData(){ 
    var data = localStorage.getItem("date"); 

    var dates = data ? JSON.parse(data) : []; 

    dates.push(Date.now()); 

    localStorage.setItem("date", JSON.stringify(dates)); 

    alert("Your data is stored"); 
} 
+0

감사에 대한 배열을 사용하고 싶습니다. 코드를 통합 한 후에 어떤 이유로 날짜가 로컬 저장소에 전혀 저장되지 않았습니다. 그리고 버튼을 클릭 한 후에도 경고가 나타나지 않습니다. – michelle9090

+0

확실하게 작동합니다. - https://jsfiddle.net/adeneo/2uod274d/ – adeneo

+0

흠, iOS 용 PhoneGap을 사용하고 있기 때문에 그럴 수 있습니다. 일부 기능을 지원합니까? 기본적으로 복사하여 내 응용 프로그램 시뮬레이터에서 작동하는지 확인하기 위해 jsfiddle 코드를 붙여 넣었으므로 여전히 그렇지 않습니다. – michelle9090