Просмотр полной версии : Длина строки в javascript.
ECMAScript Programming Language Specification умалчивает о том, какая может быть максимально допустимая длина строки. Кто-нибудь, когда-нибудь и где-нибудь читал хоть что-нибудь об этом?
ECMAScript Programming Language Specification умалчивает о том, какая может быть максимально допустимая длина строки. Кто-нибудь, когда-нибудь и где-нибудь читал хоть что-нибудь об этом?
Длинна строки чего: кода или выводимой на экран информации?
Длинна строки чего: кода или выводимой на экран информации?
Длина литерала:
var str = 'aaaaaaaaaaaaaaa.......aa'; // maximum characters length is?..
Если я не ошибаюсь, то как и в других языках -255 символов.
Если я не ошибаюсь, то как и в других языках -255 символов.
Ошибаетесь, к сожалению. Вот простенький тест, выполнив который в браузерах IE/FF/Opera, можно убедиться, что строка, длинной в 1000 символов, легко создается, и при этом позволяет выполнять строковые операции (все это в течении 0 мс):
var start = new Date;
var length = 1000;
var str = '';
while (length--) {
str += 'a';
};
alert([str.length, str.substr(999),
str.lastIndexOf('a'), new Date - start]);
Vyazovoi
27.09.2007, 21:16
если в спецификации ни слова и учитывая что скрипт исполняется браузером - можно предположить что зависит от конкретного браузера :)
Вобще очень интересный вопрос, может стоит посмотреть в документации, ну например по движку gecko?
Учитывая то, что JavaScript назвать полноценным языком программирования нельзя, то можно предположить, что ему по барабану на длинну строки.
Хотя нужно признать, что вопрос действительно очень интересный.
... JavaScript назвать полноценным языком программирования нельзя...
Это еще почему?
а вы проведите эксперимент в файрфоксе запустите такой скриптик:
<script language = "javascript">
q = "a";
for (f=0;f<255;f++) {
q = q + q;
document.write (f+' : '+q+'<br>');
};
</script>
правда подвиснет на некоторое время :)
но у меня он выдал
Ошибка: out of memory
Источник: file:///1.html
Строка: 6
то есть увеличивал строку до тех пор пока память не кончилась.
видимо длина строки ограничивается только ресурсом памяти.
а вы проведите эксперимент...
Эксперимент - это хорошо. Но вопросов он не убавляет, а прибавляет. Вот, в частности:
...видимо длина строки ограничивается только ресурсом памяти.
"Ресурсом памяти" - какой именно памяти?