JS и его "недостатки"
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.123] |
|
|
Правила раздела:
| Страницы: (66) « Первая ... 33 34 [35] 36 37 ... 65 66 ( Перейти к последнему сообщению ) |
JS и его "недостатки"
|
Сообщ.
#511
,
|
|
|
|
Цитата D_KEY @ Я проверяю входные данные только для методов для "внешнего использования" - таких тоже единицы... внутри участка системы все методы прекрасно работают итак... понятно же, что я смотрю в список аргументов и знаю, что и в каких количествах туда надо передать...В данном случае скорее всего проверяю. Но вам это приходится делать всегда, хотя реально так делать нужно редко. А сидеть и ждать начала отладки, чтобы мне интерпретатор указал, что я напутал с аргументами - у нас так не делается... |
|
Сообщ.
#512
,
|
|
|
|
Цитата D_KEY @ В данном случае скорее всего проверяю. Но вам это приходится делать всегда, хотя реально так делать нужно редко. Ну, ты мне еще расскажи как мне приходится делать всегда, а! Всегда я проверяю на существование нужные мне аргументы и заменяю их на умолчания, что выливается в кодЦитата var a = a || значение по умолчанию что не сильно отличается от твоего же Цитата function(a=значение по умолчанию) Цитата MyNameIsIgor @ По if-statement на каждый аргумент с выбросом соответствующего throw - да лень. Да, в очередной раз убеждаюсь, что язык ты не осилил |
|
Сообщ.
#513
,
|
|
|
|
Любое значение по умолчанию говорит об опциональности параметра. Цитата Каким образом отбрасывание лишнего превратилось в не использовать то, чего не передавали и при этом что б было полезно? Клиент зачем-то передал тебе параметры, значит с его точки зрения они не лишние. В чем заключается преимущества возможности передачи аргументов, которые функция не хочет и не будет обрабатывать? |
|
Сообщ.
#514
,
|
|
|
|
Цитата Астарот @ что не сильно отличается от твоего же Лишняя строчка в исходнике, которая в 50% случаев будет выполнять a = a Конечно не сильно! |
|
Сообщ.
#515
,
|
|
|
|
Цитата MyNameIsIgor @ На личности переходим? Да ECMA я не читал, как-то не требовалось... и что? теперь я не знаю js? Давай еще чего-нибудь расскажи, ты же весь ECMA на зубок небось зазубрил?Сказал мне чеовек, только здесь узнавший о === Вы, уважаемый, хоть букварёнок какой по js прочитали? Ну, про стандарт ECMA я вообще молчу... А такое за сколько напишешь: http://www.dhtmlx.com/docs/products/dhtmlx...rid/index.shtml ? Кроссбраузерно, включая IE7? (я серьезно, просто интересно) |
|
Сообщ.
#516
,
|
|
|
|
Цитата fatalist @ Я проверяю входные данные только для методов для "внешнего использования" - таких тоже единицы... Представляешь, а это мог бы делать интерпретатор Цитата внутри участка системы все методы прекрасно работают итак... понятно же, что я смотрю в список аргументов и знаю, что и в каких количествах туда надо передать... Но ты же человек и можешь ошибиться. И если бы интерпретатор отлавливал такие ситуации, то разве это не было бы лучше? |
|
Сообщ.
#517
,
|
|
|
|
Цитата D_KEY @ С его точки зрения может быть все, что угодно! Функцию написал я! И количество и номенклатуру аргументов определил тоже я, значит работать она будет с тем набором аргументов, который задал я! Клиент зачем-то передал тебе параметры, значит с его точки зрения они не лишние. В чем заключается преимущества возможности передачи аргументов, которые функция не хочет и не будет обрабатывать? А клиент либо смотрит в функцию/документацию и работает, либо нет и идет лесом... |
|
Сообщ.
#518
,
|
|
|
|
Цитата D_KEY @ Любое значение по умолчанию говорит об опциональности параметра. Я не правильно выразился - да, ты знаешь, что параметр можно не задать и он будет при этом null. Что тебе дало это знание? Без знания о том, что за параметр ты задаешь этот null смысла не имеет, а при знании ты не передашь в функцию не то, что надо. Цитата Мяут-Настоящий @ Лишняя строчка в исходнике, которая в 50% случаев будет выполнять И чо? Рвет попку? А то, что function(a=null) в сам_придумай_скольких_случайх делает что-то одно попку не разрывает? Цитата D_KEY @ Клиент зачем-то передал тебе параметры, значит с его точки зрения они не лишние. Это проблемы клиента. с какой стати они должны волновать вызываемую функцию? Функция знает как она работает и что ей для работы надо - если это есть, то она работает, если нет - говорит об ошибке в свойственном ей виде. При чем тут фантазии клиента? Цитата D_KEY @ В чем заключается преимущества возможности передачи аргументов, которые функция не хочет и не будет обрабатывать? Преимущество вообще-то в том, что для любого количества аргументов используется один и тот же синтаксис, что облегчает написание кода, а указанное тобой - уже следствие этого. |
|
Сообщ.
#519
,
|
|
|
|
Цитата D_KEY @ Он бы делал это везде и тратил бы дорогое время пользователя, мне оно не надо, потому как лени я не чувствую... Представляешь, а это мог бы делать интерпретатор |
|
Сообщ.
#520
,
|
|
|
|
Цитата Астарот @ сегда я проверяю на существование нужные мне аргументы и заменяю их на умолчания, что выливается в код Цитата var a = a || значение по умолчанию что не сильно отличается от твоего же Цитата function(a=значение по умолчанию) Даже если не сильно(а на самом деле не так уж и слабо), то значения по умолчанию - это особенная ситуация, а в js любой аргумент может быть не задан |
|
Сообщ.
#521
,
|
|
|
|
Цитата fatalist @ На личности переходим? Т.е. ткнуть вас в ваше незнание инструмента - это "на личности", а всю тему называть меня "ниасилившим" - это тру, я понял, ok. Цитата Астарот @ Да, в очередной раз убеждаюсь, что язык ты не осилил Чудненько, сейчас нам Астарот покажет, как именно он в функции foo(a, b) проверяет, что ему передали все нужны параметры при том, что значений по умолчанию быть не может. |
|
Сообщ.
#522
,
|
|
|
|
Цитата D_KEY @ Так интерпретатор мне выдаст ошибку, только в ошибке будет указана не строка 12 (там где аргументы), а скажем 15... меня это не парит... Но ты же человек и можешь ошибиться. И если бы интерпретатор отлавливал такие ситуации, то разве это не было бы лучше? |
|
Сообщ.
#523
,
|
|
|
|
Цитата fatalist @ А такое за сколько напишешь: http://www.dhtmlx.com/docs/products/dhtmlx...rid/index.shtml ? Кроссбраузерно, включая IE7? |
|
Сообщ.
#524
,
|
|
|
|
Цитата MyNameIsIgor @ Я лично не называл (кажется)... а незнание одного оператора это уже незнание инструмента... ну да... Т.е. ткнуть вас в ваше незнание инструмента - это "на личности", а всю тему называть меня "ниасилившим" - это тру, я понял, ok. |
|
Сообщ.
#525
,
|
|
|
|
Цитата D_KEY @ И если бы интерпретатор отлавливал такие ситуации, то разве это не было бы лучше? Guru fatalist (Online) Не было бы потому что он бы делал это всегда, даже тогда, когда не надо. Именно из-за этого у тебя там несколько синтаксисов для одного и того же. |