Локальное хранение в хроме

У меня есть код JavaScript, который сохраняет строку в локальном хранилище, размер строки - 400000,

var dataURL = canvas.toDataURL("image/jpg").toString();
localStorage.setItem("dataURL", dataURL);

Я открываю html файл с хром, на одном компьютере его ОК на другом компьютере я получаю

Uncaught QuotaExceededError: не удалось выполнить 'setItem' on "Хранение": значение "dataURL" превысило квоту.

На этом компьютере мне удалось сохранить длину строки не более 100000 символов. Оба компьютера имеют один и тот же хром Версия 35.0.1916.114 м Почему?

Ответ 1

rКогда ваш браузер достигнет максимального предела, он выкинет эту ошибку Не удалось выполнить 'setItem' в 'Storage': установка значения '' превысила квоту.

  • Вы можете справиться с этим следующим образом:

 try {
     var count = 100;
     var message = "LocalStorageIsNOTFull";
     for (var i = 0; i <= count; count + 250) {
         message += message;
         localStorage.setItem("stringData", message);
         console.log(localStorage);
         console.log(count);
     }

 }
 catch (e) {
     console.log("Local Storage is full, Please empty data");
     // fires When localstorage gets full
     // you can handle error here or empty the local storage
 }

Ответ 2

Это зависит от предпочтений браузера и дискового пространства. Сравните браузеры двух компьютеров здесь https://arty.name/localstorage.html и проверьте, не хранят ли они то же самое. символов. Вы увидите разницу.

Ответ 3

Хром локальное хранилище по умолчанию - 25M, поэтому очистите ваше хромированное локальное хранилище. удачи!