【问题标题】:How do you get the length of a string?你如何得到一个字符串的长度?
【发布时间】:2010-11-05 20:35:43
【问题描述】:

如何在jQuery中获取字符串的长度?

【问题讨论】:

  • 优秀的只用普通的JS。

标签: javascript jquery string-length


【解决方案1】:

您不需要 jquery,只需使用 yourstring.length。请参阅参考资料herehere

更新

为了支持 unicode 字符串,长度需要计算如下:

[..."?"].length

或者创建一个辅助函数

function uniLen(s) {
    return [...s].length
}

【讨论】:

  • 我也是,哦,SO的乐趣。
  • 我打赌这只是竞争。 :D
  • Artem Barger -- 可能是因为他询问了有关使用 Jquery 的问题。
  • Artem Barger - 可能是因为他正在寻找与我相同的东西:一种获取 HTML 标签中包含的文本长度的方法。我是初学者,所以我知道如何获取内容,但不知道它的长度。从这个意义上说,下面 Genesis 的答案更好。
  • "?".length == 2。我们怎样才能得到实际的字符数?
【解决方案2】:

最简单的方法:

$('#selector').val().length

【讨论】:

  • 唯一回答问题的答案。
  • 怎么样?在问题的哪个地方,他没有提到来自:input 值的字符串
  • 这个也是如此:len = $('#selector').is('div') ? "someString".length : 0 并且同样有意义......
  • 但这仍然只是使用javascript,不是吗?与@Artem Barger 的回答相同
【解决方案3】:

jQuery 是一个 JavaScript 库。

您不需要使用 jQuery 来获取字符串的长度,因为它是一个基本的 JavaScript 字符串对象属性。

somestring.length;

【讨论】:

  • +1 用于包含“jQuery 是一个 JavaScript 库”这一行。很多答案都说您不需要 jQuery,但这可能会让认为“jQuery”和“JavaScript”是两个不同事物的人感到困惑。
【解决方案4】:

HTML

<div class="selector">Text mates</div>

脚本

alert(jQuery('.selector').text().length);

结果

10

【讨论】:

    【解决方案5】:

    您不需要使用 jquery。

    var myString = 'abc';
    var n = myString.length;
    

    n 将是 3。

    【讨论】:

      【解决方案6】:

      一个比较重要的区别是元素是否是输入。如果您可以使用输入:

      $('#selector').val().length;
      

      否则,如果元素是不同的 html 元素,如段落或列表项 div 等,则必须使用

      $('#selector').text().length;
      

      【讨论】:

      • 这个问题的答案是正确的!这里真正定义了,如何获取“输入字段”或“文本”值的长度。此外,还可以获得 html 长度,例如 $('#selector').html().length
      【解决方案7】:

      你需要的不是 jquery,而是 JS:

      alert(str.length);
      

      【讨论】:

        【解决方案8】:

        与您在 javascript 中的操作方式相同:

        "something".length

        【讨论】:

          【解决方案9】:

          在某些情况下,String.length 可能会返回一个与屏幕上实际可见字符数不同的值(例如,某些表情符号由 2 个 UTF-16 单元编码):

          MDN says: 此属性返回字符串中的代码单元数。 UTF-16,JavaScript 使用的字符串格式,使用单个 16 位代码单元来表示最常用的字符,但对于不常用的字符需要使用两个代码单元,所以 返回值是可能的按长度与字符串中的实际字符数不匹配

          在 Unicode 中,单独的可见字符称为字素。如果您需要考虑这种情况,您将需要一些可以将字符串拆分为字素的库,例如:https://www.npmjs.com/package/grapheme-splitter

          【讨论】:

            【解决方案10】:

            在 jQuery 中:

            var len = jQuery('.selector').val().length; //or 
            ( var len = $('.selector').val().length;) //- If Element is Text Box
            

            var len = jQuery('.selector').html().length; //or
            ( var len = $('.selector').html().length; ) //- If Element is not Input Text Box
            

            在 JS 中:

            var len = str.len;
            

            【讨论】:

              猜你喜欢
              • 2021-07-01
              • 2013-09-02
              • 1970-01-01
              • 2013-11-25
              • 1970-01-01
              • 2015-09-02
              • 2015-03-12
              • 1970-01-01
              • 2017-01-14
              相关资源
              最近更新 更多