使用不存在的变量分配javascript变量会发生什么

时间:2011-05-11 19:59:29

标签: javascript jquery

我正在分配一个值为

的javascript变量
var newline = $("#newline").val();

$("#newline").val()可能存在也可能不存在(在某些情况下,#newline可能不存在于DOM中,或者即使它存在,也可能没有任何值)。

我想检查是否设置了var newline。我该怎么做?

2 个答案:

答案 0 :(得分:5)

这归结为“如果没有与DOM中的选择器匹配的元素,jQuery val方法会返回什么?”

答案是undefined所以:

if ( typeof newline === "undefined" ) {

}

答案 1 :(得分:0)

jQuery的:

(function() {
    if (this && this[0] && this[0].value) {
        // Has a value
    } else {
        // Has no value    
    }    
}).call($("#newline"));

this[0]是HTML元素本身,而不是jQuery对象。

Pure JavaScript:

(function() {
    if (this && this.value) {
        // Has a value
    } else {
        // Has no value    
    }    
}).call(document.getElementById("newline"));