Просмотр полной версии : Объем переменной
Народ, кто-нибудь знает сколько памяти выделено под переменную в JavaScript?
Могу я запихнуть в переменную, например, 20 мегабайт?
Могу я запихнуть в переменную, например, 20 мегабайт?Да Вы мазохист или извращенец, батенька.
Konstantin
24.08.2007, 01:03
стоит протестить, может быть такое, что под разными браузерами это ограничение (если есть) будет разным.
На самом деле мне нужно сделать историю. У меня в web-приложении пользователь совершает много действий.
Вот я и думаю - как мне все его действия запомнить?
Первое что пришло мне в голову - добавлять действия в переменную. А при движении обратно - стирать!
А откуда сумасшедший размер в 20Мб взялся?
Konstantin
24.08.2007, 01:30
Думаю что можно сохранить в сессию, не думаю что это займет 20 метров, темболее что историю можно хранить частично, например за последний час (или ограничить кол-во записей в истории, например - 200, и стирать старые по мере появления новых).
А откуда сумасшедший размер в 20Мб взялся?
Размер от балды, имел в виду, что будет большой объем....
Думаю что можно сохранить в сессию, не думаю что это займет 20 метров, темболее что историю можно хранить частично, например за последний час (или ограничить кол-во записей в истории, например - 200, и стирать старые по мере появления новых).
Мне никак нельзя историю стирать, долго объяснять почему.
А сохранить в сессию - отличная идея!
А как через JavaScript это сделать?
В JS нет сессий.
Как вариант можете отправлять значение JS-переменной на сервер, а там уже писать в базу или файл.
Konstantin
24.08.2007, 01:50
А история посещения сохраняется в пределах веб-приложения? Т.е. история посещения страниц приложения? Или каких угодно страниц?
Это история сформированных AJAX запросов. Это пирамида(иерархия). Под каждым квадратом - еще два. На экране 3 уровня. Пользователь может перемещаться по пирамиде вниз, нажав на один из квадратов. В этот момент формируется запрос сервлету, который выдает что находится ниже и возвращает. JavaScript устанавливает другие картинки и пользователь видит, что находится ниже в пирамиде.
Мне нужно сохранять историю спуска вниз, чтобы пользователь всегда мог нажать кнопку "подняться вверх".
Я эту функцию уже реализовал. Я просто записываю в переменную url, который посылается с помощью XMLHttpRequest. Каждый новый спуск вниз дописывает в переменную url. А когда пользователь жмет вверх я стираю последний url, а предпоследний посылаю сервлету.
Честно говоря, я не особо знаю в чем разница между записью в переменную и в сессию(в смысле скорости). Моя цель, чтобы эта операция выполнялась быстрей!
Konstantin
24.08.2007, 02:06
Если вы делаете Get запрос, то Вы должны учитывать, тот факт, что длина Get запроса имеет ограничение (причем существенное).
ну так заносите url в сессию на сервере - никакой JS не нужен.
У меня размер url в запросе всегда одинаковый. Я историю добавляю в другую переменную.
Powered by vBulletin® Version 4.2.2 Copyright © 2021 vBulletin Solutions, Inc. All rights reserved. Перевод: zCarot