- 1
- 2
- 3
function isEmptyStr(val) {
return val == null || val === "";
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+154
function isEmptyStr(val) {
return val == null || val === "";
}
oneguy 01.08.2012 16:08 # 0
SmackMyBitchUp 01.08.2012 16:10 # 0
oneguy 01.08.2012 16:14 # −1
glprizes 01.08.2012 16:16 # +2
oneguy 01.08.2012 16:21 # −1
Название функции немного не соответствует сути, но, на мой взгляд, не в такой степени, чтобы считать это говнокодом.
glprizes 01.08.2012 17:10 # +3
oneguy 01.08.2012 21:34 # −3
В процессе развития проекта бывает, что функция меняет своё назначение, а название остаётся старым.
roman-kashitsyn 02.08.2012 00:03 # +1
oneguy 03.08.2012 01:24 # −2
oneguy 05.08.2012 17:13 # 0
bormand 05.08.2012 17:25 # 0
То есть так? ;)
USB 05.08.2012 17:49 # 0
USB 05.08.2012 17:50 # 0
bormand 05.08.2012 17:58 # 0
P.S. Вот если бы oneguy сформулировал свою фразу как "возвращает false, если аргумент не пустая строка и не нулл", тогда я бы согласился с кодом ОП'а.
А так, имхо, мой код более точно подходит к описанию "возвращает false если аргумент - непустая строка или значение другого типа".
oneguy 15.08.2012 02:40 # 0
Я здесь описал не функцию ОПа, то пример того, что если в названии функции присутствует Str, то это не означает, что функция принимает только строку. Тем самым опровёрг утверждение glprizes-а
"Название намекает, что функция принимает параметром строку."
wvxvw 05.08.2012 18:56 # 0
bormand 06.08.2012 06:19 # 0
P.S. Блин оно теперь на пустых массивах возвращает true ;(
bormand 06.08.2012 06:30 # 0
P.P.S. Неужели в JS никак нельзя отличить любой объект, у которого есть length от массива или строки, запиленных через new Array/new String?
bormand 06.08.2012 06:43 # 0
http://ideone.com/Ra97V
wvxvw 06.08.2012 10:58 # +1
Но автор не рассказал зачем ему нужна была такая функция. Скорее всего она ему была не нужна.
EDIT: а хотя, нет, так массив тоже пройдет. Блин.
bormand 06.08.2012 11:02 # 0
JS такой JS ;)
wvxvw 06.08.2012 11:08 # 0
bormand 06.08.2012 11:13 # 0
На самом деле, если кто-то это туда передал - значит так ему и надо...
roman-kashitsyn 06.08.2012 11:22 # +1
Всё равно в javascript можно всё сломать, зачем лишний раз упираться, если всего-то строку на пустоту нужно проверить
wvxvw 10.08.2012 11:53 # 0
roman-kashitsyn 10.08.2012 11:59 # +1
Надо всего-лишь не позволять никому встраивать в страницу собственный javascript код. Параноиком нужно быть не при программировании на javascript, а при обработке данных, поступающих от пользователя (т.е. решать проблему на более высоком уровне).
wvxvw 10.08.2012 12:46 # 0
Или, может, всем отказаться от Гугл-аналитикс и других сервисов которые предоставляются похожим образом между разными сайтами?
roman-kashitsyn 10.08.2012 12:59 # +1
И да, это не левый код, пришедший от пользователя, а сознательно подключенные приложения, импакт которых можно оценить заранее.
wvxvw 10.08.2012 15:50 # +1
Просто когда случится что-нибудь такое вселенского масштаба, типа как вот не так давно группа любителей сделала массовое перенаправление с гугловских ИП на какие-то левые в Латвии, на столько умело, что в Штатах государство потом еще год субсидировало сервера-замену, которые подменяли собой пиратские сервера.
Обнаружится какая-нибудь возможность эксплоита Гугл-аналитикс, и если ей кто-то воспользуется, последсвия вообще могут быть грандиозными, типа воровства миллионов кредитных карточек или чего-то в таком духе.
Кроме того, честно говоря, гугловский код совсем даже не отличается каким-то высоким качеством, особенно в том, что касается ЯваСкрипта и Флеша. АПИ к картам текло памятью как сито, например.
Но, проблема не в Гугле и тамошних программистах, потому что большинство и того хуже, а в том, что язык по задумке такой уродский, что написать на нем более-менее безопасную программу не возможно, либо возможно, но в самых тривиальных ситуациях.
roman-kashitsyn 10.08.2012 15:56 # +2
Вот вы сами себе противоречите и подтверждаете мой тезис: не нужно даже пытаться, всё равно не угадаешь, что сломают (если сломают). Только код запутается, профита от этой паранои ноль.
wvxvw 10.08.2012 16:03 # 0
bormand 10.08.2012 16:15 # +2
Вы за время перехода обдумываете все варианты, как злые водители могут вас сбить, и как отразить эти атаки? Или же тупо подходите к переходу, ждете зеленого света, смотрите на всякий случай направо и налево и идете?
wvxvw 10.08.2012 17:27 # 0
guest 10.08.2012 00:28 # +1
универсальный вариант:
wvxvw 10.08.2012 03:47 # 0
Ниже, по-идее универсальное решение:
bormand 10.08.2012 05:49 # 0
guest 10.08.2012 09:06 # 0
wvxvw 10.08.2012 11:46 # 0
wvxvw 05.08.2012 18:54 # 0
Vasiliy 06.08.2012 19:22 # 0
oneguy 01.08.2012 16:28 # −2
SmackMyBitchUp 01.08.2012 17:39 # 0