Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: как работает эта строка
Форумы портала PHP.SU » Клиентская разработка » JavaScript & VBScript » как работает эта строка

Страниц (1): [1]
 

1. _kT - 28 Апреля, 2010 - 12:49:27 - перейти к сообщению
strip.style.borderColor = cc || gpc(this.parentNode);

объясните пожалуйста чё за или ? вроде нет условия
2. Мелкий - 28 Апреля, 2010 - 13:04:30 - перейти к сообщению
|| - это как раз и есть условие. Если strip.style.borderColor окажется false, то сработает логическое "или"
3. Ch_chov - 28 Апреля, 2010 - 14:01:56 - перейти к сообщению
strip.style.borderColor будет равен cc, если cc равен TRUE или преобразовывается в TRUE. Причем gpc() при этом даже не будет вызываться.

В противном случае strip.style.borderColor получит значение из функции gpc().

Такую конструкцию удобно применять, когда функция работает с необязательными параметрами.
4. _kT - 28 Апреля, 2010 - 18:35:51 - перейти к сообщению
мда.
я вначале думал что если не прошло присваивание (типы не совпали или ещё что - нибудь) то просто выполняется функция
5. JustUserR - 29 Апреля, 2010 - 13:56:13 - перейти к сообщению
_kT пишет:
Объясните пожалуйста чё за или ? вроде нет условия
Такая штука называется оператором коротного замыкания - их существует два вида В первом случае используется оператор || и второй операнд вычисляется когда первый является false - во втором случае используется оператор && и второй операнд вычисляетя когда первый является true
Суть работы заключается в том что операторы && и || является операторами упрощенного сравнение - в частности || сразу возвращает true если первый операнд true - а && возвращает false если первый операнд false На этом эффекте данных операторов и построена такая схема На основе него же можно и вызывать функции по условию - главное правильно установить приоритет операцией и если нао поставить скобки
Кстати такие операторы широко используются в *nix- как в самой командной оболочке (Пример make && make install) так и в Perl (Оттуда пошло название оператор короткого замыкания)

 

Powered by ExBB FM 1.0 RC1