【问题标题】:Check if a string in an array has white space character in javascript/jquery检查数组中的字符串是否在 javascript/jquery 中有空格字符
【发布时间】:2015-11-21 16:32:09
【问题描述】:

我正在尝试在可竞争的 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 trueconsole.log 但它总是返回 false,即使它是空的字符串(空白)。

Demo

【问题讨论】:

  • 空格不是空字符串。很不清楚你在期待什么。也许arr[i]==' ' ???
  • @A.Wolff:当我得到文本 abc de 并在数组中逐个字符显示它时。空间将存储为什么?我尝试获取 typeof arr[i] 并将空格显示为字符串。我错了吗?
  • '' == " "; //总是假的。空字符串不能等于空格字符。
  • @Pbk1303 我还是不明白你想要什么/意思。你想忽略空格还是什么?对于“空字符”(您是指空白字符???),请使用正则表达式:/\s/.test(arr[i])
  • @A.Wolff:谢谢你,是的,你的权利我试图寻找空白字符。

标签: javascript jquery arrays string


【解决方案1】:

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

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

考虑到如果字符串中有空格,则不会将其视为空!如果你想忽略空格:

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

【讨论】:

    【解决方案2】:

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

    function hasWhiteSpace(s) {
      return /\s/g.test(s);
    }
    
    
    if(hasWhiteSpace(arr[i]))
                 {
                  console.log("i is        true"+arr[i]);
                 }
    

    【讨论】:

      【解决方案3】:

      正如 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]);
              }
          } 
      } 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-03-19
        • 2022-06-25
        • 2010-12-16
        • 1970-01-01
        • 2017-10-30
        • 1970-01-01
        • 2014-06-23
        相关资源
        最近更新 更多