在javascript中没有任何价值

时间:2013-03-10 22:12:03

标签: javascript jquery

我需要检查数据集属性给出的一些数据,可能会发生数据集为空,如果是这样,我仍然需要跳过if语句,但是空数据集仍然是真的,我试过...... null,undefined,他们不工作。

因此,如果没有值存在则应该是假的。

// false
<div data-value=""></div>

if($('div').data('value') !== ""){
   alert('hello ...world?')
}

//true
<div data-value="  "></div>

if($('div').data('value') !== ""){
   alert('hello ...world?')
}

3 个答案:

答案 0 :(得分:2)

当然,javascript中的''计算结果为false(空字符串)。但是' '是一个值,它是空格。

您可以先尝试修剪字符串:

// false
<div data-value="  "></div>

if($('div').data('value').trim() !== ""){
   alert('hello ...world?')
}

答案 1 :(得分:0)

尝试修剪然后检查真实性

$('div').each(function () {
    var data = $.trim($(this).data('value'));
    if (data) {
        alert('hello ...world?');
    }
});

http://jsfiddle.net/ethagnawl/qJXHr/2/

答案 2 :(得分:0)

您应该测试您想要的确切内容。如果要测试字符串是否包含除空格之外的其他内容,请考虑:

if (/\S/.test($('div').data('value'))) {
  // value contains something other than white space
}