【问题标题】:Inline javascript function call from variable来自变量的内联 javascript 函数调用
【发布时间】:2013-08-01 23:18:14
【问题描述】:

我想从一个变量内联调用一个函数,但考虑到这种情况,当变量为空/未定义或不是函数时。

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;

【问题讨论】:

    标签: javascript function null undefined inline


    【解决方案1】:

    您可以使用逻辑与:

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

    仅当第一个运算符为真时才评估第二个运算符。

    【讨论】:

    • 不错。有没有办法缩短typeof f === 'function'
    猜你喜欢
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 1970-01-01
    • 2012-02-06
    • 2017-04-04
    • 2013-12-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多