【问题标题】:Javascript remove items in array after a certain positionJavascript在某个位置后删除数组中的项目
【发布时间】:2012-08-28 08:47:37
【问题描述】:

假设您永远无法知道将传递给浏览器的字符串、任意长度的任意字符的任意组合,我想将其限制为 50 个字符。

这是我目前拥有的:

<script type="text/javascript">
    var x = "Hello this sentance was created in the browser!"
    for(i=0; i<x.length; i++){
        if(i == 50){

        }
    }
</script>

最终 x 会是这样的:

var x = $('#textBit').html();

如何在位置 50 之后删除数组(字符串)中的所有内容,我是否需要一个类似这样的新 for 循环(只是想出来可能是错误的)伪代码:

loop remainder string{
    do until end of array{
        remove item
    }
}

或者有更好的方法吗?谢谢。

【问题讨论】:

    标签: javascript html arrays loops iterator


    【解决方案1】:

    使用string.substring(indexA[, indexB]) 方法:

    返回一个索引和另一个索引之间的字符串子集,或通过 字符串的结尾。

    https://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/String/substring

    【讨论】:

      【解决方案2】:

      没有:

      if (x.length <= 50)
        return x;
      else
         return x.substring(0, 50);
      

      【讨论】:

      • substring 已经做了这个检查,所以不需要自己检查。
      • 不必要的函数调用的开销! ;D
      【解决方案3】:

      只需使用substr() (MDN docu)。这将返回符合您条件的子字符串,例如,从开头开始并且最多包含 50 个字符:

      var x = "Hello this sentance was created in the browser!"
      
      var shortString = x.substr( 0, 50 );
      

      【讨论】:

        猜你喜欢
        • 2022-12-15
        • 1970-01-01
        • 2021-10-22
        • 2014-05-01
        • 2015-10-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多