2015-11-16 3 views
0

Я читаю объект массива из файла javascript и добавляю к нему объект, когда пользователь нажимает кнопку. Однако, когда я обновляю страницу или закрываю браузер и снова открываю файл, объект массива остается неизменным, то есть элемент, добавленный пользователем, не отражается в объекте массива.Измените переменную javascript и сохраните ее в файле

Есть ли способ обновить переменную javascript, чтобы она также обновлялась в файле javascript?

+0

Нет, не существует. В основном потому, что обычно исходный файл сценария полностью недоступен. Посмотрите на «localstorage» или на серверную базу данных. – Bergi

ответ

0

Я бы использовал локальное хранилище. Вот полезный предмет для использования LocalStorage:

var LocalStorageManager = { 
    setValue: function(key, value) { 
     window.localStorage.setItem(key, JSON.stringify(value)); 
    }, 
    getValue: function(key) { 
     try { 
      return JSON.parse(window.localStorage.getItem(key)); 
     } catch (e) { 

     } 
    } 
}; 

Вы бы хранить данные, как это:

LocalStorageManager.setValue("key", data); 

и получить эти данные, как это:

var data = LocalStorageManager.getValue("key"); 

Без LocalStorage:

Этот было бы самым простым способом, в javascript для этого. В NodeJS:

var fs = require('fs'); 
fs.writeFile("/tmp/test.txt", "Hey there!", function(err) { 
    if(err) { 
     return console.log(err); 
    } 
    console.log("The file was saved!"); 
}); 
+0

Однако не удаляется ли локальная локация после закрытия компьютера и/или браузера? –

+0

Он не будет удален, пока кто-то не очистит кеш браузера. –

+0

Это хорошо для передачи данных. Но это плохо для хранения данных в течение очень длительных периодов времени. –

Смежные вопросы