Просмотр полной версии : Функция charAt
Есть ли обратная функция для функции charAt.
Извините!
Не charAt, а charCodeAt . Требуется обратное действие функции charCodeAt , чтобы из числа получить букву.
trace(String.fromCharCode(65)+String.fromCharCode(45)+String.fromCharCode(90));
Спасибо!
Как говорится - "Не по шарам". Пример рядом лежал.
Nox Noctis
21.11.2002, 01:20
fromCharCode - это круто, канеш =)
но 'chr' - на 9 (девять) букв короче !..
...а если разница одинакова - то зачем платить больше ?! :D
зы: да, да, я в курсе, это функция устаревшая, deprecated, бла-бла-бла... но вы ведь это тоже знаете, правда ? ну вот и замечательно :D
А влияет ли это на размер swf? Надо как-нибудь проверить.
Но меня больше волнует другой вопрос. Вот везде пишут. Устаревшая, устаревшая, ..... Для совместимости с будующими версиями рекомендуют не использовать. Еще в пятерке рекомендовали. В МХ все осталось. А дальше? Уберут они устаревшие команды или же все-таки решили оставить все - и старые и новые?
Проверил! Влияет!
fromCharCode - это круто, канеш =)
но 'chr' - на 9 (девять) букв короче !..
...а если разница одинакова - то зачем платить больше ?!
При fromCharCode размер swf был 13707 байт, при chr 13717. Перепроверил дважды - результат тот же. Так зачем платить больше, видимо разница есть.
Nox Noctis
21.11.2002, 03:47
Basil, глу - пос - ти =)))
Проверил! Влияет! и я проверил, канеш влияет :D
смотрим:
в первом кадре написано: a = String.fromCharCode(65);
в байткодах это выглядит:
frame 0
push 'a', 65, 1, 'String'
getVariable
push 'fromCharCode'
callMethod
setVariable
end // of frame 0
во втором кадре написано: b = chr(65);
в байткодах это выглядит:
frame 1
push 'b', 'A'
setVariable
end // of frame 1
ну как ? :D байткоды - это то что непосредственно выполняет флэш во время проигрывания свф...
даже если не разбираться в действиях - видно, что в случае fromCharCode действий ПЯТЬ тогда как в случае chr действия ДВА =))))
и
если написать в пустой флэшке
a = String.fromCharCode(65); — свф будет 80 байт.
если написать в пустой флэшке
a = chr(65); — свф будет 46 байт.
то есть и по скорости и по объему полученных кодов chr лучше чем fromCharCode В ДВА РАЗА :D а если у тебя вызовов этих функция много - то набегает очень солидная разница ;)
так что там насчет платить больше ? кому платить ? :D :p
Н-да, дела. Убедил. А где ты эти байткода берешь, я чего-то не понял. Хотелось бы самому посмотреть, посравнивать.
Nox Noctis
21.11.2002, 12:28
flash actionscript assembler/disassembler (http://flasm.sourceforge.net/)
Nox, у тебя на работу время остается? :)
Nox Noctis
21.11.2002, 14:00
хе - хе... =))
а ты посмотри на время написания большинства постов =)) ...обычно это где-то между полуночью и пятью утра =))
DeliMIter
21.11.2002, 15:45
Вот именно! А работать когда?
Nox Noctis
21.11.2002, 15:51
после полуночи надо охотиться =) проливать кровь невинных жертв... а вы все про флэш да про флэш... тьфу !.. :D
DeliMIter
21.11.2002, 15:56
:D :D
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.