JS и его "недостатки"
![]() |
Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
|
| ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
| [216.73.216.123] |
|
|
Правила раздела:
| Страницы: (66) « Первая ... 21 22 [23] 24 25 ... 65 66 ( Перейти к последнему сообщению ) |
JS и его "недостатки"
|
Сообщ.
#331
,
|
|
|
|
Цитата Астарот @ Я ни того ни другого не знаю, поэтому все твои портянки кода буду просто пропускать ... Видишь недостаток - покажи псевдокодом Питон от псевдокода отличается очень слабо. Цитата бумем обсуждать недостаток, а не реализацию в питоне/руби/хрензнаетчем. Я просто тебе показываю, как может быть иначе... Добавлено Цитата Астарот @ Ну и нахрена, спрашивается в задачнике, нужно ДВА синтаксиса для одной и той же задачи? Хотя бы для того, чтобы не проверять каждый аргумент на undefined |
|
Сообщ.
#332
,
|
|
|
|
Цитата D_KEY @ Питон от псевдокода отличается очень слабо. За то мыслить будешь в общем, а не на питоне ![]() Цитата D_KEY @ Я просто тебе показываю, как может быть иначе... А мне интересно "как может быть иначе"? Речь о недостатках в конце-концов, так что показывать как там можно иначе имеет смысл только продемонстрировав недостаток. А у тебя наоборот - берешь "как можно еще" и начинаешь доказывать, что это чуть ли не единственный правильный вариант |
|
Сообщ.
#333
,
|
|
|
|
Задач тоже две. Функция от указанных аргументов и функция от произвольного числа аргументов. |
|
Сообщ.
#334
,
|
|
|
|
Цитата D_KEY @ Хотя бы для того, чтобы не проверять каждый аргумент на undefined ![]() То-то я гляжу в твоем коде if'ы затесались Добавлено Цитата D_KEY @ Задач тоже две. Функция от указанных аргументов и функция от произвольного числа аргументов. Это у тебя их две, а у меня - одна, а именно - функция с одним ргументом, которого может не быть |
|
Сообщ.
#335
,
|
|
|
|
Цитата Астарот @ Ну и нахрена, спрашивается в задачнике, нужно ДВА синтаксиса для одной и той же задачи? Задачи вроде бы тоже две: функция с фиксированным числом аргументов и функция с произвольным числом аргументов. Скрытый текст А вообще Python vs. JS - это господа, сильно ![]() |
|
Сообщ.
#336
,
|
|
|
|
Цитата Астарот @ Цитата D_KEY @ Хотя бы для того, чтобы не проверять каждый аргумент на undefined ![]() То-то я гляжу в твоем коде if'ы затесались ![]() Так это только в том случае, если я хочу принять произвольное число аргументов А если не хочу, то так клиенту и скажу - дай мне, например, 2 аргумента, не больше и не меньше. Добавлено Цитата Мяут-Настоящий @ А вообще Python vs. JS - это господа, сильно ![]() Это я виноват С чем еще сравнивать? |
|
Сообщ.
#337
,
|
|
|
|
Да и вообще, чего ходить вокруг да около! Задачка же описана - есть событие по которому вызывается твой метод fn(), в 50% случаев в метод передается параметр, в 50% случаев - нет. Изобрази что ли на псевдокоде реализацию этого метода обрабатывающего оба случая
|
|
Сообщ.
#338
,
|
|
|
|
Цитата Астарот @ а у меня - одна, а именно - функция с одним ргументом, которого может не быть ![]() Так и скажи интерпретатору: "я не знаю количество аргументов, которое мне отправит клиент". |
|
Сообщ.
#339
,
|
|
|
|
Цитата D_KEY @ А если не хочу, то так клиенту и скажу - дай мне, например, 2 аргумента, не больше и не меньше. Ну, задачку я тебе описал, пока пью чай у тебя есть время ее решить в общем виде Добавлено Цитата D_KEY @ Так и скажи интерпретатору: "я не знаю количество аргументов, которое мне отправит клиент". В общем-то код ![]() ![]() function( a ) { var b = a || c; это и говорит |
|
Сообщ.
#340
,
|
|
|
|
Цитата Астарот @ Задачка же описана - есть событие по которому вызывается твой метод fn(), в 50% случаев в метод передается параметр, в 50% случаев - нет. Это что ж за метод такой с нечеткой семантикой? Я кажется понял предназначение js - это язык с нечеткой логикой. Его хотели использовать для написание искусственного интеллекта, а получился скрипт для браузерных скриптов |
|
Сообщ.
#341
,
|
|
|
|
Цитата Астарот @ Да и вообще, чего ходить вокруг да около! Задачка же описана - есть событие по которому вызывается твой метод fn(), в 50% случаев в метод передается параметр, в 50% случаев - нет. Изобрази что ли на псевдокоде реализацию этого метода обрабатывающего оба случая ![]() ![]() ![]() function fn(... args): if args: # параметр передался else: # параметр не передался |
|
Сообщ.
#342
,
|
|
|
|
Цитата Астарот @ Да и вообще, чего ходить вокруг да около! Задачка же описана - есть событие по которому вызывается твой метод fn(), в 50% случаев в метод передается параметр, в 50% случаев - нет. Изобрази что ли на псевдокоде реализацию этого метода обрабатывающего оба случая ![]() Да, пардонте! Во втором случае не просто ничего не приходит, а приходит в глобальную переменную, которой в первом случае вообще не существует. Добавлено Цитата D_KEY @ Цитата Астарот @ Да и вообще, чего ходить вокруг да около! Задачка же описана - есть событие по которому вызывается твой метод fn(), в 50% случаев в метод передается параметр, в 50% случаев - нет. Изобрази что ли на псевдокоде реализацию этого метода обрабатывающего оба случая ![]() ![]() ![]() function fn(... args): if args: # параметр передался else: # параметр не передался Ну, а теперь сравни с кодом который был тебе показан изначально Одно простое присвоение против твоего блока if'ов и else'ов Ты уверен, что упростил себе жизнь? А с учетом того, что я тебе кинул про arguments я готов засчитать шумный слив |
|
Сообщ.
#343
,
|
|
|
|
Цитата Астарот @ В общем-то код ![]() ![]() function( a ) ... это и говорит ![]() А тебе не кажется, что он должен говорить, что функция принимает один аргумент? Добавлено Цитата Астарот @ Ты уверен, что упростил себе жизнь? ![]() Жизнь я себе упростил не этим. А тем, что могу объявить функцию, которая принимает нужное мне число аргументов(а таких функций большинство). |
|
Сообщ.
#344
,
|
|
|
|
Цитата Астарот @ Омг. По моему каждый потпирает этот ява скрипт, такими кастылями, какие просто попадаются под руку. Да, пардонте! Во втором случае не просто ничего не приходит, а приходит в глобальную переменную, которой в первом случае вообще не существует. |
|
Сообщ.
#345
,
|
|
|
|
Цитата D_KEY @ А тебе не кажется, что он должен говорить, что функция принимает один аргумент? Нет, не кажется. Цитата D_KEY @ Жизнь я себе упростил не этим. А тем, что могу объявить функцию, которая принимает нужное мне число аргументов(а таких функций большинство). Ну, так тебе и тут никто не мешает. Ты по ссылке http://javascript.ru/arguments так и не сходил что ли? |