Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   дилетантский вопрос (https://javascript.ru/forum/misc/52974-diletantskijj-vopros.html)

registrant 15.01.2015 20:56

if(window.fu) fu()

Deff 15.01.2015 20:59

registrant,
Ну а если есть переменная со сходным именем ?

registrant 15.01.2015 21:21

Цитата:

Сообщение от Deff
Ну а если есть переменная со сходным именем ?

А ты не в курсах, что в JS нет отдельного неймспейса для ф-ций?

registrant 15.01.2015 21:29

можно еще вот так
window.fu&&fu()

ruslan_mart 16.01.2015 04:40

Deff, функция по сути же и есть переменная. :)

function test() {
   //...
};

alert( test );

alert( window.test );

test = 123;

alert( typeof test );


registrant, а если переменная не ф-ция? Ошибка же будет. И почему проверка через window? Можно просто if(fu) fu();

registrant 16.01.2015 08:27

Цитата:

Сообщение от Ruslan_xDD
а если переменная не ф-ция? Ошибка же будет

а если бы он вез патроны?
Цитата:

Сообщение от Ruslan_xDD
Можно просто if(fu) fu();

так если переменной нет, будет референс эррор еще до первой ветки.

ruslan_mart 16.01.2015 09:50

registrant, так определи её, в чём проблема?

var fn;


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