Pull to refresh

Comments 17

var team = teamName? teamName: 'unaffiliated';

var team = teamName || 'unaffiliated';
А если teamName может в функцию придти как false? Правда, с false вариант, который вы переписали тоже не сработает корректно. Универсальное `if(typeof teamName === «undefined») ` всегда лучше пусть и длиннее.

Я предложил код эквивалентный процитированному. Разумеется, если teamName может быть числом или булевым значением — такое решение в общем случае неприемлемо.


Просто меня возмутило, что автор в статье про JS не применил приём, который встречается чуть менее, чем везде.


Универсальное if(typeof teamName === «undefined») всегда лучше пусть и длиннее.

Ситуация бывает разная. Если я пишу библиотеку, то я должен предусмотреть любое говно, которое могут передать в аргументе. Но если я пишу функцию для внутреннего использования, не предоставляемую во вне, и передача не того типа данных исключена — то почему бы и нет.

UFO landed and left these words here
UFO landed and left these words here
Не знаю даже что меня больше расстроило, поверхностность статьи, постоянное обращение на «ты» в переводе, или правописание в стиле «довольно не плохо».

Потрудились бы в своих многочисленных комментариях хотя бы за пунктуацией следить.

UFO landed and left these words here
Расстраивает повтор одного и того же материала про ЕС6, уже 3я статья за пару месяцев об одном и том же.
UFO landed and left these words here
Впрочем, надо завтра проверить — может это банальная переменная "_" заведётся с первым параметром функции…

Так и есть. Это простой синтаксический трюк, как оператор «!!», который приводит значение к логическому типу.

UFO landed and left these words here
Интересно, зачем такое писать вообще?

Это красиво. Как в Lua.

UFO landed and left these words here

Не согласен. Явные обёртки над примитивными типами — это лишняя сущность.

необходимость неявного возврата. Стрелочные функции, по умолчанию, автоматически создают ключевое слово return, если код занимает одну строку и не обернут в фигурные скобки {}.
В оригинале статьи была допущена неточность, которая перекочевала в перевод. Вот пример, состоящий из двух строк, обёрнутых в фигурные скобки, а затем — в круглые скобки, но, тем не менее, создаётся неявный возврат:
const foo = () => ({ bar: "foobar",
                     baz: "quux" });
UFO landed and left these words here
Не согласился бы, что это неточность. В данном примере показано, что при работе со стрелочными функциями для неявного возврата объекта необходимо оборачивать литерал объекта в круглые скобки.
Sign up to leave a comment.

Articles