检查数组中的字符串是否在javascript / jquery中具有空格字符

时间:2015-11-21 16:32:10

标签: javascript jquery arrays string

我正在尝试在可竞争的div中键入一个文本,当我循环遍历它们时,for循环作为一个数组并检查是否有任何空白字符(即abc de,即两个单词之间的空格不认为它们是空字符串)。请参阅下面的代码。

脚本:

function htmltoBBcode() {
    $("#hidden").html($('#textEditor').html());
    $("#hidden").html($('#textEditor').html()); 
    var arr=$("#hidden").text();
    for(var i=0;i<arr.length;i++)
    {
        if(arr[i]=='')
        {
             console.log("i is true"+arr[i]);
        }
        else{
            console.log("i is false"+arr[i]);
        }
    } 
}

在上面的代码中,我正在从contenteditable div中获取文本并循环遍历它们,如果arr[i]=='' return true console.log getAccountDetails(..)但它始终返回false,即使它是一个空字符串(空格)。

Demo

3 个答案:

答案 0 :(得分:3)

如果要检查字符串是否为空,请使用:

if (!arr[i]) {
  // is emtpy
}

考虑到如果String中有空格,则不认为它是空的!如果你想忽略空格:

if (!arr[i].trim()) {
    // is empty 
}

答案 1 :(得分:3)

这个位置没有空车。这是一个太空卡车。您可以使用此功能检查是否有空格字符。

function hasWhiteSpace(s) {
  return /\s/g.test(s);
}


if(hasWhiteSpace(arr[i]))
             {
              console.log("i is        true"+arr[i]);
             }

答案 2 :(得分:1)

正如A.Wolff指出的那样,空格不是空字符串。我还将==更改为===以避免强制。这是jsbin

JS

function htmltoBBcode() {
    $("#hidden").html($('#textEditor').html());
    $("#hidden").html($('#textEditor').html()); 
    var arr=$("#hidden").text();
    for(var i=0;i<arr.length;i++)
    {
        if(arr[i]===" ")
        {
             console.log("i is true: "+arr[i]);
        }
        else{
            console.log("i is false: "+arr[i]);
        }
    } 
}