javascript indexOf函数使用说明


Posted in Javascript onJuly 03, 2008

使用方法:strObj.indexOf(str,startIndex[可选])

 程序代码

其中strObj是必选项。String 对象或文字。
str是必选项。要在 String 对象中查找的子字符串。
startIndex是可选项。该整数值指出在 String 对象内开始查找的位置,从0开始。如果省略,则从字符串的开始处查找。

注意:对于JavaScript的indexOf是区分大小写的。

JavaScript中indexOf函数方法返回一个整数值,指出 String 对象内子字符串的开始位置。如果没有找到字符串,则返回 -1。如果 startindex 是负数,则 startindex 被当作零。如果它比最大的字符位置索引还大,则它被当作最大的可能索引。

indexOf函数是从左向右执行查找
下面的示例说明了indexOf函数方法的用法。

 程序代码

var str1="fdiejDIFADF";
var str="e";
var i=str1.indexOf(str);
alert(i);

在前面说了,indexOf是区分大小的写,有时这就给我们造成了一定的麻烦,那怎么解决呢??当然最简单的方法是把字符用toLowerCase或toUpperCase转化为大写或小写就解决了。
代码如下:

 程序代码

<script>
var Str = 'ABCDEF';
var Str1 = 'bcd';
alert(Str.toLowerCase().indexOf(Str1.toLowerCase()));
str2 = 'AbCdEf';
alert(Str2.toLowerCase().indexOf(Str1.toLowerCase()));
</script>

下面这个方法利用正则对indexOf进行了扩展(来自网络)

 程序代码

<script>
String.prototype.indexOf = function(f,m){
var mm = (m == false) ? "i":"";
var re = eval("/"+ f +"/"+mm);
var rt = this.match(re);
return (rt == null) ? -1:rt.index; 
}
var test = "absnegKIugfkalg";
alert(test.indexOf("kiu",false));
</script>

下面的这个扩展就更强大了,它兼容原来的 indexOf函数,也可以进行忽略大小的查找(同样来自网络)。

 程序代码

<script language="javascript">
String.prototype._indexOf = String.prototype.indexOf;
String.prototype.indexOf = function()
{
        if(typeof(arguments[arguments.length - 1]) != 'boolean')
                return this._indexOf.apply(this,arguments);
        else
        {
                var bi = arguments[arguments.length - 1];
                var thisObj = this;
                var idx = 0;
                if(typeof(arguments[arguments.length - 2]) == 'number')
                {
                        idx = arguments[arguments.length - 2];
                        thisObj = this.substr(idx);
                }

                var re = new RegExp(arguments[0],bi?'i':'');
                var r = thisObj.match(re);
                return r==null?-1:r.index + idx;
        }
}
alert("bcssssasdfsdf".indexOf('A',3,true));
alert("bcssssasdfsdf".indexOf('a',3));
</script>

Javascript 相关文章推荐
js关闭当前页面(窗口)的几种方式总结
Mar 05 Javascript
Javascript排序算法之合并排序(归并排序)的2个例子
Apr 04 Javascript
node.js cookie-parser 中间件介绍
Jun 06 Javascript
angularjs封装bootstrap时间插件datetimepicker
Jun 20 Javascript
js中document.referrer实现移动端返回上一页
Feb 22 Javascript
简单实现js菜单栏切换效果
Mar 04 Javascript
javascript 中select框触发事件过程的分析
Aug 01 Javascript
JS Testing Properties 判断属性是否在对象里的方法
Oct 01 Javascript
微信小程序模版渲染详解
Jan 26 Javascript
写一个移动端惯性滑动&amp;回弹Vue导航栏组件 ly-tab
Mar 06 Javascript
jQuery实现王者荣耀手风琴效果
Jan 17 jQuery
写一个Vue loading 插件
Nov 09 Javascript
复制本贴标题和地址的js代码
Jul 01 #Javascript
js文字滚动停顿效果代码
Jun 28 #Javascript
js兼容标准的表格变色效果
Jun 28 #Javascript
js查找父节点的简单方法
Jun 28 #Javascript
一个小型js框架myJSFrame附API使用帮助
Jun 28 #Javascript
JavaScript 给汉字排序实例代码
Jun 28 #Javascript
教你如何解密js/vbs/vbscript加密的编码异处理小结
Jun 25 #Javascript
You might like
域名查询代码公布
2006/10/09 PHP
使用PHP实现密保卡功能实现代码&amp;lt;打包下载直接运行&amp;gt;
2011/10/09 PHP
PHP动态生成javascript文件的2个例子
2014/04/11 PHP
php中字符集转换iconv函数使用总结
2014/10/11 PHP
PHP实现的大文件切割与合并功能示例
2018/04/10 PHP
javaScript 删除字符串空格多种方法小结
2012/10/24 Javascript
jquery入门—选择器实现隔行变色实例代码
2013/01/04 Javascript
jQuery 获取URL的GET参数值的小例子
2013/04/18 Javascript
分享Javascript中最常用的55个经典小技巧
2013/11/29 Javascript
jQuery ajax serialize() 方法使用示例
2014/11/02 Javascript
jfreechart插件将数据展示成饼状图、柱状图和折线图
2015/04/13 Javascript
JavaScript制作淘宝星级评分效果的思路
2020/06/23 Javascript
js表单验证实例讲解
2016/03/31 Javascript
Vue数据驱动模拟实现5
2017/01/13 Javascript
Node.js websocket使用socket.io库实现实时聊天室
2017/02/20 Javascript
canvas 绘制圆形时钟
2017/02/22 Javascript
微信小程序下拉刷新PullDownRefresh的使用方法
2018/11/29 Javascript
细述Javascript的加法运算符的具体使用
2019/10/18 Javascript
JS实现简单打字测试
2020/06/24 Javascript
[01:09]DOTAPLUS——DOTA2的新时代
2018/04/04 DOTA
Python中join函数简单代码示例
2018/01/09 Python
Python 绘图库 Matplotlib 入门教程
2018/04/19 Python
Python实现的各种常见分布算法示例
2018/12/13 Python
Python面向对象总结及类与正则表达式详解
2019/04/18 Python
使用Python完成15位18位身份证的互转功能
2019/11/06 Python
Python文件名匹配与文件复制的实现
2020/12/11 Python
分享PyCharm最新激活码(真永久激活方法)不用每月找安装参数或最新激活码了
2020/12/27 Python
宝拉珍选澳大利亚官方购物网站:Paula’s Choice澳大利亚
2016/09/13 全球购物
报关报检委托书
2014/04/08 职场文书
小班上学期个人总结
2015/02/12 职场文书
保研导师推荐信
2015/03/25 职场文书
投资入股协议书
2016/03/22 职场文书
2019年入党思想汇报
2019/03/25 职场文书
CSS实现章节添加自增序号的方法
2021/06/23 HTML / CSS
logback 实现给变量指定默认值
2021/08/30 Java/Android
使用kubeadm命令行工具创建kubernetes集群
2022/03/31 Servers