在javascript/jQuery中有类似于php的东西吗?

gau*_*kum 72 javascript php jquery isset

javascript/jQuery中有什么东西可以检查变量是否设置/可用?在php中,我们isset($variable)用来检查这样的东西.

谢谢.

Emi*_*röm 137

试试这个表达式:

typeof(variable) != "undefined" && variable !== null
Run Code Online (Sandbox Code Playgroud)

如果定义了变量而不是null,则这将是真的,这相当于PHP的设置工作方式.

你可以像这样使用它:

if(typeof(variable) != "undefined" && variable !== null) {
    bla();
}
Run Code Online (Sandbox Code Playgroud)

  • 我不认为这里有"变量!== null属于".variable = null可以是具有重要含义的定义值.我会将空检查推送到另一个"空"或"hasValue"函数.主要用于防止非实例化错误和设置默认值,而不是检查变量的实质. (2认同)

Ole*_*leg 9

PHP JS上的JavaScript isset()

function isset () {
    // discuss at: http://phpjs.org/functions/isset
    // +   original by: Kevin van     Zonneveld (http://kevin.vanzonneveld.net)
    // +   improved by: FremyCompany
    // +   improved by: Onno Marsman
    // +   improved by: Rafa? Kukawski
    // *     example 1: isset( undefined, true);
    // *     returns 1: false
    // *     example 2: isset( 'Kevin van Zonneveld' );
    // *     returns 2: true
    var a = arguments,
        l = a.length,
        i = 0,
        undef;

    if (l === 0) {
        throw new Error('Empty isset');
    }

    while (i !== l) {
        if (a[i] === undef || a[i] === null) {
            return false;
        }
        i++;
    }
    return true;
}
Run Code Online (Sandbox Code Playgroud)


Dan*_*nne 5

typeof 会达到我认为的目的

if(typeof foo != "undefined"){}
Run Code Online (Sandbox Code Playgroud)