从变量调用内联javascript函数

时间:2013-08-01 23:18:14

标签: javascript function null undefined inline

我想从变量调用函数内联,但是在变量为null / undefined或者不是函数时尊重这种情况。

var f;
if(typeof(f) == 'function') {
    f(); // don't get executed
}
f(); // this is of course not working, but it is executing

var fn = function() { console.warn('fn'); }
fn(); // working because fn is a function

基本上我想要if语句,在一行中检查变量是否是函数。

我看到了这一点,并认为有一些未定义/非功能的东西:

var screenSize = screen.width || 1024;

1 个答案:

答案 0 :(得分:1)

您可以使用逻辑AND:

typeof f === 'function' && f();

第二个运算符仅在第一个运算符是完整的时才进行评估。