| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > JavaScript: Общие вопросы > модернизировать код |
| Автор: Samotnik 1.11.2007, 14:24 | ||
есть код
желательно сделать как можно меньше строчек кода!!! Помогите плз |
| Автор: GIK 1.11.2007, 14:40 |
| куда меньше-то? |
| Автор: Samotnik 1.11.2007, 14:47 |
| ну к примеру что бы постоянно не писать document.operation.... |
| Автор: SelenIT 1.11.2007, 14:55 | ||
Зачем вообще там javascript? Разве JSP не позволяет сделать просто что-то вроде следующего?
|
| Автор: Samotnik 1.11.2007, 14:59 |
| дык, нет, мне же нужно как то значение кнопки считать... Вобщем, можно ли то, что я скинул сразу, оптимизировать или нет?? Пэ.Эс. Я знаю, что можно. Т.к. это мое задание (модернизировать) ))))) |
| Автор: SelenIT 1.11.2007, 15:10 |
| Samotnik, зачем его "считывать"? В том варианте, что я предложил, оно придет при сабмите автоматически - серверной стороне-то без разницы, какого типа было поле value в форме, ей важно значение получить. Так что работать это будет идентично исходному варианту (с той разницей, что работоспособность будет сохраняться и при отключенном JS;). |
| Автор: Samotnik 1.11.2007, 15:14 | ||
SelenIT, Ну хорошо!! Допустим так и есть. Но у меня задание сделать использую JavaScript !!!! Я его выполнил, оно идеально работает, НО ток что сказали, что можно выражение
Заменить одним методом!!! И не писать по сто раз эту длинную фразу. Так вот я и интересуюсь, как можно и каким образом ее заменить ????? Как написать эту функцию? |
| Автор: SelenIT 1.11.2007, 15:28 | ||
Во-первых, можно заменить document.operation на this.form (оно, имхо, еще и понадежней будет). Во-вторых, можно убрать onclick-и у кнопок, а в сам form поставить
...так может, это подразумевало "без перезагрузки страницы"? |
| Автор: Samotnik 1.11.2007, 15:34 | ||||
SelenIT, спс, НО сказали что нужна функция вместо
и все тут Т.е. на каждый
вызывать строку. Ведь она везде ОДНА И ТА ЖЕ. А значит ее можно заменить одной функцией и не писать по сто раз одно и тоже !!! |
| Автор: SelenIT 1.11.2007, 15:41 |
| Samotnik, заменить на функцию - это, имхо, шило на мыло, а не оптимизация. Все равно придется писать в каждом onclick-е одно и то же, плюс еще саму функцию (из одной строчки) описывать. Чем не устраивает вариант c единственным oncick-ом на <form> (перехват события при его "всплытии")? |
| Автор: ksnk 1.11.2007, 16:45 | ||||
Так, что-ли? |
| Автор: SelenIT 1.11.2007, 17:01 |
| Автор: dsCode 2.11.2007, 13:04 | ||
Samotnik, можно и так:
Но это все, на самом деле, извраты и я бы задумался, действительно ли от меня хотят оптимизации или просто не хотят брать на работу и придумывают "интересные" задания, чтобы потом сказать "нет, надо было через функцию потоков виртуальной памяти ввода-вывода через библиотеки DLL при объектно-ориентированном подходе (С) - приблизительная цитата одного из участников форума =))". Так что, прочтите еще раз пост SelenIT'a и подумайте об этом =) |
| Автор: Samotnik 2.11.2007, 13:15 |
И от того, ечли я подумаю что-то измениться?? Это ведь не моя прихоть. Я же говорил, то что я сделал, все работает!!! Но нужно сделать через функцию, вот к примеру ksnk, сделал именно то, что от меня и требуется, но единственный недочет, то что калькулятор мой не считает!!! Именно "равно" не работает! А все операции работают превосходно !! |
| Автор: dstorm81 2.11.2007, 13:25 | ||
| 1 <br></br> - что это такое если нужен один перенос то <br /> 2
у меня вопрос а что для субмитов имена не нужны? |
| Автор: dsCode 2.11.2007, 13:45 |
| Samotnik, ну а какая разница - все равно одна и та же строка пишется 5 раз (button_click(this);) =) сейчас к Вам и по этому поводу прикапаются - "а что, можно же заменить все это одной строкой?". |
| Автор: Samotnik 2.11.2007, 13:48 |
Думаю, что так и будет |
| Автор: dsCode 2.11.2007, 14:10 |
| Samotnik, ну вот в моем примере, можно сказать "одна строка" - там вообще динамически эти кнопки добавляются. Только какой в этом смысл? Не нужен здесь JS (опять же, ИМХО). Вы спросите начальство, что именно они хотят проверить у Вас? Знание JavaScript? Так есть и более интересные примеры, чем "сомнительная оптимизация". |
| Автор: Samotnik 2.11.2007, 14:16 | ||
| dstorm81, Вы АФФИГЕННО забожили!! Мало того что работает, так еще и ПРАВИЛЬНО Большое всем спасибо за помощь!! А dsCode, еще и за разговорчик Пэ.Эс.
Оки спрошу ). но дело в том что JavaScript мне не особо нужен, я вообще на Java порграммлю, а сейчас аппликация нужна для работы в интернете, через .jspx страницы, написал, а тут он приходит и говорит,- "А сделай ка мне через JavaScript" - вот сижу и делаю Еще раз всем спасибо |
| Автор: dsCode 2.11.2007, 14:35 |
| Все равно тут оптимизации никакой =) Хоть 5 раз напиши "operation.value....", хоть 5 раз "make(this)", хоть 5 раз "button_click(this)". Еще и дополнительные вызовы функций. Но, главное, что начальство устроило |
| Автор: ksnk 2.11.2007, 15:43 | ||
я потормозил...писал на коленке :(. Нужно писать вот так
|
| Автор: SelenIT 4.11.2007, 02:07 | ||
Интереса ради попробовал я "добить" вариант без перезагрузки страницы, ориентируясь на поведение калькулятора из Windows в обычном режиме. Вот что получилось...
Возможно, "перемудрил"... |