Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   continue в z = x ? x : continue; (https://javascript.ru/forum/misc/29673-continue-v-z-%3D-x-x-continue%3B.html)

beard 06.07.2012 18:53

continue в z = x ? x : continue;
 
Почему
var name = names[i] ? names[i] : continue;

Не хочет работать так как нужно, т.е. пропустить итерацию если false, может и хочет но бросает синтаксическую ошибку :-E

Как же тогда его туда затолкать?

devote 06.07.2012 18:57

var name = names[i];
if ( !name ) continue;

B@rmaley.e><e 06.07.2012 19:14

Не надо его туда заталкивать. Используйте if, не насилуйте тернарный оператор.

beard 06.07.2012 19:24

Цитата:

Сообщение от B@rmaley.e><e
Не надо его туда заталкивать. Используйте if, не насилуйте тернарный оператор.

Ок. Дык уже не первый раз хочу изнасиловать этот тернарный оператор таким способом, а он морозится.
Решил уже спросить на форуме wtf! :)

Aetae 06.07.2012 21:24

continue ничего не возвращает, его кабэ вообще нет, потому js видит после : пустоту и ругается.

Drimogemon 06.07.2012 23:13

сч его ты вообще взял что ты можешь испрльзовать тернарный оператор как if ????

beard 06.07.2012 23:25

Цитата:

Сообщение от Drimogemon
сч его ты вообще взял что ты можешь испрльзовать тернарный оператор как if ????

А кто мне это запретит?:lol:

Drimogemon 06.07.2012 23:36

Цитата:

Сообщение от beard
А кто мне это запретит?

тот кто запретил до этого

beard 07.07.2012 00:03

На кону + в карму.

Напоминаю вопрос:
Цитата:

Почему некоторые форумчане считают что нельзя испрльзовать тернарный оператор как if ????

Небольшая подсказка: никто не может запретить его использовать.

Цитата:

Сообщение от Drimogemon
тот кто запретил до этого


И это неправильный ответ, следующий участник вращайте барабан.

oneguy 07.07.2012 00:35

Цитата:

Сообщение от beard
Почему некоторые форумчане считают что нельзя испрльзовать тернарный оператор как if ????

Потому, что в тернарном операторе операнды могут быть только выражениями и не могут содержать, например, continue. А почему так - потому что так написано в спецификации.


Часовой пояс GMT +3, время: 15:27.