Логин:

Пароль:

Форумы
Общие вопросы
Document Object Model
Обсуждаем конференцию
Web Usability (test)

Общие вопросы

Грамотный js

Смотрю иногда чужие скрипты и удивляюсь.
Иногда столько кода городят, что бы реализовать какой либо эффект, требующий использования js.
На самом деле профессионализм написания js кода заключается в том числе в краткости его написания. Это не значит, конечно, что переменным нужно назначать всегда однобуквенные имена.
Однако не будем забывать, что js код броузер тоже подгружает. И чем он меньше, тем лучше.
Почему то не часто я встречаю в скриптах регулярные выражения, которые сильно облегчают работу, особенно в проверке данных на корректность.
И в больших скриптах не используют ООП.
А про универнальность использования кода в том или ином проекте я вообще молчу.
Удивила тема "Интеллектуальная битва". Мы это уже 2 года назад прошли...
Ну, вобщем опыт приходит со временем.

А пока всем презент от меня.
Первая функция округляет число (финансовое округление!) до указанной точности.
Ее можно использовать для подавления известного глюка javascript с точностью выполнения математических операций.
А вторая, используя первую приводит число в денежный формат.

//rounds number to d decimal places, defaults to 2
round=function(number,decimal) {
var d=(decimal?decimal:2);
return Math.round(number*Math.pow(10,d))/Math.pow(10,d);
}

//return the amount in the money format .99 (/^\d+\.\d{2}$/)
//used round() function
toMoney=function(amount) {
var a=round(amount);
return(a==Math.floor(a))?a+'.00':((a*10==Math.floor(a*10))?a+'0':a);
}

Удачи!
СообщениеАвторДата
Ринат30.09.2002 00:17
гоша30.09.2002 15:02
Gilmour30.09.2002 20:51
гоша30.09.2002 21:10
Gilmour01.10.2002 02:13
гоша01.10.2002 11:50
Maniac01.10.2002 14:03
гоша01.10.2002 18:53
Leechy01.10.2002 16:56
Rinat01.10.2002 13:40
Gilmour30.09.2002 02:39
Rinat30.09.2002 15:32
гоша30.09.2002 21:07
Rinat01.10.2002 13:36
гоша01.10.2002 18:42