关于Javascript中字符串函数indexOf出现的问题?

<script>
var str="abcdefghijklmnopqrstuvwxyz";
document.write("字符串"+str+"中从前到后pq出现的位置是:"+str.indexOf('pq',6)+'<br>');
document.write("字符串"+str+"中从后到前pq出现的位置是:"+str.lastIndexOf('pq',1)+'<br>');
</script>

上段代码不论怎么改('pq',1)中数字的值,它就是不改变,还是15和-1!

这是怎么会事?

问题补充:document.write("字符串"+str+"中从前到后pq出现的位置是:"+str.indexOf('pq',6)+'<br>');

这一句有什么错!就是从第6个字符开始查找pq字符串!应该能找到的啊!怎么是15

上次的回答是错误的 在此道歉。

在javascript中字符串的位置都是从0开始的,并且0永远是左边的第一个字符。

lastIndexOf 是:从左边开始,最后一次出现pq的位置,当你所说的数字的改变范围小于15时,值永远是-1,大于等于15时,值永远是15

实例:

str.lastIndexOf('pq',8) 从第8个字符i开始倒数 ihgfedcba为止。并没有出现pq,返回就是-1

str.lastIndexOf('pq',25) 从z开始从右向左找pq

时间: 2024-08-07 05:14:44

关于Javascript中字符串函数indexOf出现的问题?的相关文章

JavaScript中字符串分割函数split用法实例_javascript技巧

本文实例讲述了JavaScript中字符串分割函数split用法.分享给大家供大家参考.具体如下: 先来看下面这段代码: <script type="text/javascript"> var str="How are you doing today?" document.write(str.split(" ") + "<br />") document.write(str.split("&q

javascript中match函数的用法小结

 本篇文章主要是对javascript中match函数的用法进行了详细的总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助 javascript中的match函数是使用正则表达式对字符串进行查找,并将查找的结果作为数组返回,在实际开发中非常的有用,使用方法如下:  stringObj.match(rgExp)  其中stringObj是必选项.对其进行查找的 String 对象或字符串文字.  rgExp是必选项.为包含正则表达式模式和可用标志的正则表达式对象.也可以是包含正则表达式模式和可

AJAX入门之深入理解JavaScript中的函数

ajax|javascript|函数 概述 函数是进行模块化程序设计的基础,编写复杂的Ajax应用程序,必须对函数有更深入的了解.JavaScript中的函数不同于其他的语言,每个函数都是作为一个对象被维护和运行的.通过函数对象的性质,可以很方便的将一个函数赋值给一个变量或者将函数作为参数传递.在继续讲述之前,先看一下函数的使用语法: function func1(-){-}var func2=function(-){-};var func3=function func4(-){-};var f

JavaScript中small函数

JavaScript中small函数方法是将 HTML 的<SMALL> 标识添加到String 对象中的文本两端.使用方法: strVariable.small( )"String Literal".small( ) 下面的示例演示了 JavaScript中small函数方法是如何使用的: var strVariable = "This is a string";strVariable = strVariable.small( ); 在上一条语句之后

JavaScript中split函数

JavaScript中split函数方法是将一个字符串分割为子字符串,然后将结果作为字符串数组返回.使用方法: stringObj.split( [separator[, limit]]) 其中stringObj是必选项.要被分解的 String 对象或文字.该对象不会被 split 方法修改. separator是可选项.字符串或 正则表达式 对象,它标识了分隔字符串时使用的是一个还是多个字符.如果忽略该选项,返回包含整个字符串的单一元素数组. limit是可选项.该值用来限制返回数组中的元素

JavaScript中字符串(string)转json的2种方法

  这篇文章主要介绍了JavaScript中字符串(string)转json的2种方法,两种方法分别是使用js函数eval()和.使用jquery.parseJSON()方法,需要的朋友可以参考下 第一种方式: 使用js函数eval(); testJson=eval(testJson);是错误的转换方式. 正确的转换方式需要加(): testJson = eval("(" + testJson + ")"); eval()的速度非常快,但是他可以编译以及执行任何ja

JavaScript中exec函数用法实例分析

  本文实例讲述了JavaScript中exec函数用法.分享给大家供大家参考.具体如下: javaScript 中的 exec 函数,用正则表达式模式在字符串中运行查找,并返回包含该查找结果的一个数组. rgExp.exec(str) 参数: rgExp 必选项.包含正则表达式模式和可用标志的正则表达式对象. str 必选项.要在其中执行查找的 String 对象或字符串文字. 说明: 如果 exec 方法没有找到匹配,则它返回 null.如果它找到匹配,则 exec 方法返回一个数组,并且更

javaScript中slice函数用法实例分析

  本文实例讲述了javaScript中slice函数用法.分享给大家供大家参考.具体分析如下: javaScript 中的 slice 函数,对于array对象的slice函数,返回一个数组的一段.(仍为数组) arrayObj.slice(start, [end]) 参数: arrayObj,必选项.一个 Array 对象. start,必选项.arrayObj 中所指定的部分的开始元素是从零开始计算的下标. end,可选项.arrayObj 中所指定的部分的结束元素是从零开始计算的下标.

javascript中eval函数用法分析

  javascript中eval函数用法分析         这篇文章主要介绍了javascript中eval函数用法,实例分析了javascript中eval函数的使用技巧,非常具有实用价值,需要的朋友可以参考下 本文实例分析了javascript中eval函数用法.分享给大家供大家参考.具体分析如下: eval()只有一个参数,如果传入的参数不是字符串,则直接返回这个参数.否则会将字符串当成js代码进行编译,如果编译失败则抛出语法错误(SyntaxError)异常.如果编译成功则开始执行这