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 相关文章推荐
javascript学习(二)javascript常见问题总结
Jan 02 Javascript
JavaScript中的noscript元素属性位置及作用介绍
Apr 11 Javascript
javascript事件函数中获得事件源的两种不错方法
Mar 17 Javascript
javascript关于继承的用法汇总
Dec 20 Javascript
jQuery基础知识点总结(必看)
May 31 Javascript
js给table赋值的实例代码
Oct 13 Javascript
node实现基于token的身份验证
Apr 09 Javascript
javascript中toFixed()四舍五入使用方法详解
Sep 28 Javascript
微信小程序开发的基本流程步骤
Jan 31 Javascript
Vue编写可显示周和月模式的日历 Vue自定义日历内容的显示
Jun 26 Javascript
详解vuex的简单todolist例子
Jul 14 Javascript
vue-router跳转时打开新页面的两种方法
Jul 29 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
PHP下escape解码函数的实现方法
2010/08/08 PHP
自定义session存储机制避免会话保持问题
2014/10/08 PHP
PHP计算加权平均数的方法
2015/07/16 PHP
Django 标签筛选的实现代码(一对多、多对多)
2018/09/05 PHP
JS BASE64编码 window.atob(), window.btoa()
2021/03/09 Javascript
JavaScript中Math对象使用说明
2008/01/16 Javascript
jQuery左右滚动支持图片放大缩略图图片轮播代码分享
2015/08/26 Javascript
JavaScript实现相册弹窗功能(zepto.js)
2016/06/21 Javascript
CSS+jQuery实现简单的折叠菜单
2016/12/20 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
使用pkg打包Node.js应用的方法步骤
2018/10/19 Javascript
JavaScript 实现同时选取多个时间段的方法
2019/10/17 Javascript
浅谈如何优雅处理JavaScript异步错误
2019/11/12 Javascript
js DOM的事件常见操作实例详解
2019/12/16 Javascript
javascript设计模式 ? 迭代器模式原理与用法实例分析
2020/04/17 Javascript
Element Breadcrumb 面包屑的使用方法
2020/07/26 Javascript
vue移动端下拉刷新和上滑加载
2020/10/27 Javascript
js制作提示框插件
2020/12/24 Javascript
[47:52]完美世界DOTA2联赛PWL S2 PXG vs InkIce 第二场 11.26
2020/11/30 DOTA
Python while 循环使用的简单实例
2016/06/08 Python
Django中STATIC_ROOT和STATIC_URL及STATICFILES_DIRS浅析
2018/05/08 Python
python虚拟环境迁移方法
2019/01/03 Python
对Python生成汉字字库文字,以及转换为文字图片的实例详解
2019/01/29 Python
Win10+GPU版Pytorch1.1安装的安装步骤
2019/09/27 Python
python tkinter控件布局项目实例
2019/11/04 Python
python中rc1什么意思
2020/06/19 Python
CSS Grid布局教程之网格单元格布局
2014/12/30 HTML / CSS
Perfumetrader荷兰:香水、化妆品和护肤品在线商店
2017/09/15 全球购物
涉外文秘个人求职的自我评价
2013/10/07 职场文书
车祸赔偿收入证明
2014/01/09 职场文书
业务部门经理岗位职责
2014/02/23 职场文书
难忘的一天教学反思
2014/04/30 职场文书
个人安全承诺书
2014/05/22 职场文书
党的群众路线教育实践活动对照检查材料思想汇报(党员篇)
2014/09/25 职场文书
Java输出Hello World完美过程解析
2021/06/13 Java/Android
python实现手机推送 代码也就10行左右
2022/04/12 Python