| Comments: |
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 02:36 pm |
|---|
| | | (Link) |
|
>язык интерпретируемый, без изысков библиотечные регулярные выражения >должны работать быстрее, чем циклы и вообще последовательности команда ни разу не факт, потому что все его компилируют в VM. что Опера, что Mozilla. >Всё-таки регулярные выражения такого уровня — конечный автомат, который >для поиска всех вхождений проходит по строке ровно один раз.это если они написаны именно так (лом лезть в исходники spidermonkey). >странное сообщение об ошибке исчезло, а работать всё равно не сталогы. а это потому, что сравнение со строкой «[b]kaledin[/b]». а Опера в данном случае выдаёт тэги в upper case. %-) проверь (давай уж на «ты», а? %-), увидишь. >посмотрю, как сделал ketmarвот так %-) (это примерно в 4 раза быстрее, чем оригинал). и заменил проверку на case insensetive. >Изучу на досуге Яваскрипт, штука в таком виде (пользовательском) >полезная…на самом деле язык убойный. с поддержкой замыканий, анонимных функций, run-time расширяемых классов с приватными данными и ты пы. только мало кто этот язык знает, хотя и много кто на нём пытается писать. %-) зыж а ещё в Опере есть свойство innerText (а в тормозилле нет, и поэтому они мудаки странные люди). то же, что innerHTML, только все тэги выкидывает нафиг.
![[User Picture]](http://lj.rossia.org/userpic/42280/9559) | | From: | ppkk |
| Date: | March 25th, 2008 - 04:09 pm |
|---|
| | | (Link) |
|
Ясно. Давай. Можешь меня и во "френды" внести (политику твою я читал на этот счёт).
А как проверять быстродействие?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 04:24 pm |
|---|
| | | (Link) |
|
>Можешь меня и во «френды» внести да на здоровье, мне не жалко. журнал читать пока лень (но в RSS засунул), по общению вроде адекват. %-)
ну, если мой дневник смотрел — я матерюсь, неполиткорректно выражаюсь, мне насрать на чужое мнение и ты пы. если вдруг захочешь «френдовыноса» — пиши, оформим точно так же. %-)
>А как проверять быстродействие? лично я проверяю консольным интерпретатором js от Mozilla. как обычно — цикл кучу раз и замеряем встроеной в шелл командой time.
то же самое можно делать и в броффзере (см. объект Date, он умеет давать текущее время), но лениво.
консольный инерпретатор я честно собрал из исходников spidermonkey с мозиллосайта. как оно собирается под винду — совершенно не в курсе, к счастью, я уже несколько лет как о ней практически забыл. %-)
![[User Picture]](http://lj.rossia.org/userpic/42280/9559) | | From: | ppkk |
| Date: | March 25th, 2008 - 04:30 pm |
|---|
| | | (Link) |
|
консольный инерпретатор я честно собрал Вряд ли у меня дойдёт до этого
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 04:36 pm |
|---|
| | | (Link) |
|
в линуксе оно просто. svn co, ./configure && make && make install, и всё собралось да поставилось.
ну, пусть не совсем так просто, я для себя ещё руками пилял, но суть не меняет. %-)
![[User Picture]](http://lj.rossia.org/userpic/42280/9559) | | From: | ppkk |
| Date: | March 25th, 2008 - 06:43 pm |
|---|
| | | (Link) |
|
svnЭто ты гонишь: у них CVS (который у меня падает при вводе пароля, но всё равно исходники скачать можно). С помощью SVN ты качаешь не с mozilla.org, полагаю. Потом я долго настраивал Visual Studio (для работы в командной строке: у них есть спец. файл для прописывания путей, но он их прописывает неправильно). Потом я нарыл make-файл в интернете http://bindzus.wordpress.com/2008/02/08/spidermonkey-solution-file-for-microsoft-visual-studio-2005/ — он подходит для 1.7.0, для текущей ветки не подходит (там какие-то сложности с jsiter, именно как человек и обнаружил и исправлял, не знаю, почему работает под Линуксом). Так что jsshell.exe у меня теперь свежесобранный (но не из свежайших исходников от разработчиков) есть. Так что фигня та же (основной геморрой был из-за сбитых настроек VS, которые она сама берётся восстанавливать, но восстанавливает неправильно).
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 07:03 pm |
|---|
| | | (Link) |
|
>Это ты гонишь: у них CVS думаешь, я помню точно, как я там качал кучу месяцев назад? %-)
>не знаю, почему работает под Линуксом у меня древнючий JavaScript-C 1.8.0 pre-release 1 2007-10-03. новые «фичи» типа итераторов меня совершенно не волнуют, пока их не добавят в Оперу. надеюсь, и не добавят, ибо в стандарте ECMAScript я такого не видел. остальное работает. собралось, помню, без шаманства (или почти без шаманства).
с MSVS работать не умею вообще, MinGW наше всё. %-)
![[User Picture]](http://lj.rossia.org/userpic/42280/9559) | | From: | ppkk |
| Date: | March 25th, 2008 - 07:42 pm |
|---|
| | | (Link) |
|
Я скачал стандарт (ECMA-262-3), начинаю читать.
Но для правильного использования всё равно придётся много читать про DOM-ы
Я вообще больше на Паскале. Поэтому все такие (MSVC) вещи с тормозами получаются.
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 08:00 pm |
|---|
| | | (Link) |
|
я тоже паскалист… был. сейчас уже всеядное непоймичто.
![[User Picture]](http://lj.rossia.org/userpic/42280/9559) | | From: | ppkk |
| Date: | March 25th, 2008 - 06:45 pm |
|---|
| | | (Link) |
|
(Сложности с jsiter в 1.7.0 [и 1.60?] исправлены человеком по ссылке, для того и качал make-файл, а в текущей ветке всё немного сложнее. Собрал в итоге 1.7.0 с помощью скачанного make-файла без каких-либо изменений.)
кстати, есть ли под линукс (визуальный) дебаггер баша?
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 27th, 2008 - 04:09 pm |
|---|
| | | (Link) |
|
фигассе. честно уронил челюсть. %-)
не знаю, даже не искал. я вообще дебаггерами практически не пользуюсь, только иногда под виндой ещё юзал.
собственно, а зачем? если логика настолько сложная, что уже надо отлаживать, не стоит ли подумать о perl/python/Lua/etc?
зыж фтопку баш. zsh наше фсьо. %-) может, в zsh что-то и есть по этому поводу, я всё никак не соберусь сего монстра выучить. %-)
вот у меня есть чужой глючащий скрипт, нужно отладить, но без дебаггера лень
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 29th, 2008 - 07:16 pm |
|---|
| | | (Link) |
|
честно — по-моему, проще переписать, чем чужой хлам отлаживать. %-)
>зыж а ещё в Опере есть свойство innerText (а в тормозилле нет, и поэтому >они мудаки странные люди). то же, что innerHTML, только все тэги >выкидывает нафиг.
в FF это называется textContent, что соответствует 3 уровню DOM
![[User Picture]](http://lj.rossia.org/userpic/197531/22349) | | From: | ketmar |
| Date: | March 25th, 2008 - 08:07 pm |
|---|
| | | (Link) |
|
да хоть analFixation. ребята из в3ц в очередной раз радостно проигнорили то, что было до них (абсолютно логичный innerText, который можно логически вывести из innerHTML) и придумали свою хуету. «потому что своя». при этом innerHTML не уничтожили и не заменили на htmlContent (см. HTML5, где innerHTML есть официально), как было бы (снова-опять) логично.
в общем, я всегда говорил, что в в3ц сидят исключительно неадекватные пидарасы в плохом смысле слова. если там и был кто вменяемый, ему давно выебли и высушили весь моск.
вообще, DOM API — то ещё говнище. я не знаю, чем думали его авторы, но подозреваю, что это слово начинается на «ж» и заканчивается на «опа». | |