某字母第几次出现位置

来源:7-8 返回指定的字符串首次出现的位置

0415

2015-12-27 23:19

假如我们要找A第二次出现,那我们用笨的方式是先找到第一次出现的位置(先假设为5),然后随便选一个在之后的位置开始运用函数object.indexOf("A",6);或者就是用object.indexOf("A",object.indexOf("A")+1)。这两种方式都能实现。

但是假如不是第二次,是第n(比较大)次呢?有比较好一点的函数实现吗?

写回答 关注

3回答

  • 慕村1994845
    2016-09-18 20:05:34

    我们来打个比方:

    var mystr="AqwAertAyuiAopaAsdfAghjAklAzxAcvAbnAmA"
    document.write("第四个A出现的位置是:"+mystr.indexOf("A",(mystr.indexOf("i"))))
    //思路是这样的,首先我们看第四个A前面的字母是什么,然后定位到从“i”开始检索A就行;当然,这个方法也不是绝对好用,比方,第四个A前面出现的字母都是有重复出现,那么就不太好用了


  • 菜菜0123456
    2016-01-21 11:25:13

    那就从第一位开始检索A,然后截取出来A的位置num,然后在从num+1的位置开始检索,然后就是一次一次的截取吧,呵呵,我觉得这样也可以,就是有点麻烦

  • 小马格
    2015-12-28 05:33:29

    object.indexOf("A",object.indexOf("A")+n-1)

    0415

    这个object.indexOf("A")+n-1是什么?我上面+1就是为了读到第一个,然后+1从后面一个开始查询,你这个+n-1没用的。我刚才试了一下,后面+n-1只是跳过这么多个字符而已。

    2015-12-28 15:25:23

    共 1 条回复 >

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题