如何检测JS变量是否未定义?

时间:2012-11-29 17:04:38

标签: javascript jquery

// mystring contains dynamic text. Sometimes can be
// null
var a = mystring.split(" ");
var proc = a[0] + " " + a[1];

如果a不包含文本,则split proc未定义。如果我尝试将其值赋予文本框,则结果为“未定义”:

mytextbox.val(proc);

enter image description here

所以我需要一种方法来使proc始终是一个值,至少是一个空字符串。

2 个答案:

答案 0 :(得分:2)

你可以使用

(mystring || " ")

如果不是mystring,则评估为null,如果是" "则评估为if

或者,你可以在整个事情上加上if (mystring != null) { // stuff } else { var proc = ""; } 陈述:

{{1}}

答案 1 :(得分:2)

var proc = "";
if (mystring !== null) { // omit this if you're sure it's a string
    var a = mystring.split(" ");
    if (a.length > 1) {
        proc = a[0] + " " + a[1];
    }
}

我确定您的proc不是undefined,而是字符" undefined"