![]() |
|
||||||||||
|
|
|
|||||
|
Регистрация: Apr 2014
Сообщений: 215
|
Здравствуйте, такой вот вопрос, как можно упростить например
можно как то указать что если не null делать действие. не могу понять как написать это))) мне не нужно первое действие,просто не могу понять как тут написать. Вообщем если не null сделать действие. Вот как это в коде выглядит подскажите кто может |
|
|||||
|
Регистрация: Apr 2014
Сообщений: 215
|
|
|
|||||
|
Lorem ipsum
|
__________________
Поймай яблоко 2! |
|
|||||
|
Lorem ipsum
|
А прелесть в том, что не важно, что возвращает trace
![]()
__________________
Поймай яблоко 2! |
|
|||||
|
Цитата:
__________________
Марк Tween |
|
|||||
|
Lorem ipsum
|
Да что ж такое )) вот не думал, что вы не знаете такого кода.
Каждая часть этой записи приводится к Boolean. Запись nameClip && trace(2) интерпретируется компилятором так: если nameClip приводится к false, то дальше ничего не делаем, (бо уже неважно, что состоит в ЛОГИЧЕСКОМ_И со значением false), но если nameClip не null (т.е. будет приведено к true) то компилятор пойдет делать то, что стоит следом, а это trace(2), и не важно, что он там вернет (void == false), потому что нас, как видно из кода, результат ЛОГИЧЕСКОГО_И как таковой не интересует — мы же его никак не анализируем. Такой же финт можно проворачивать и с ЛОГИЧЕСКИМ_ИЛИ:
__________________
Поймай яблоко 2! |
|
|||||
|
Zebestov - почему не знаем? Знаем. Просто данная запись делает код неудобочитаемым, поэтому ей не все пользуются, посему у Кордума и прилетел вопрос. А так, это вообще то в любом условии так
if( a && a.bool ) к примеру, если a = null , то дальше проверка не идет, все на этом стопится.
__________________
Марк Tween |
|
|||||
|
Lorem ipsum
|
Не стану спорить. Цели предложить что-то именно каноническое не было.
Более того, я нередко использую подобную запись как раз по причине ее удивительной логичности и очевидности.
__________________
Поймай яблоко 2! |
![]() |
![]() |
Часовой пояс GMT +4, время: 02:20. |
|
|
« Предыдущая тема | Следующая тема » |
|
|