ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

30.03.2009, 19:41
|
|
Постоянный
Регистрация: 30.08.2007
Сообщений: 773
Провел на форуме: 3069349
Репутация:
808
|
|
Сообщение от Дикс
Вот. здесь можно чета улучшить ещё?
Конечно.
Код:
for(var i = 0; i < 61; i++)
Обрабатываются только первые 62 знака исходного текста. Всё, что после - нет.
Код:
'\'': '', '\"': '', '\#': '', '\$': '',
'\%': '', '\&': '', '\*': '', '\,': '',
'\:': '', '\;': '', '\<': '', '\>': '',
'\?': '', '\[': '', '\]': '', '\^': '',
'\{': '', '\}': '', '\|': '', '\!': '',
'\@': '', '\(': '', '\)': '', '\-': '_',
'\=': '', '\+': '', '\/': '', '\\': ''
Экранирующий слэш нужен только в первом и последнем случаях. Зачем вообще удалять все эти символы - неясно.
Код:
var character;
var field = document.getElementById(id);
var from = field.value.toLowerCase();
field.value = '';
Лучше бы функции транслитерации только этим и заниматься, ей передали текст (и таблицу замен - опционально) - она вернула текст, не очищая там попутно левые поля, не заполняя их ничем, но это так, к слову.
Код:
character = from.charAt(i);
Пусть
Код:
field.value += (character in charsArray) ? charsArray[character] : character;
Можно было обойтись без этой проверки, немного развернув логику - проходить не по строке, а по самой таблице замен. (for..in)
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|