javascript中indexOf技术详解


JavaScript提供了几种技术,来在字符串中搜索一个单词、数字或其他的一串字符。搜索可能很方便,例如,如果你想要知道访问者使用哪种Web浏览器来浏览你的站点。每个Web浏览器在一个字符串中标识关于自己的信息,该字符串包含了很多不同的统计数据。可以通过在一个Web页面中添加下面这段JavaScript,并且在Web浏览器预览,从而看到这个字符串:

<script>
alert(navigator.userAgent);
</script>

Navigator是一个Web浏览器对象,并且userAgent是navigator对象的一个属性。userAgent属性包含了长长的一串信息,例如,对于运行在Windows XP上的Internet Explorer 7,其userAgent属性是:Mozilla/4.0(compatible;MSIE 7.0;Windows NT 5.1)。因此,如果你想看看Web浏览器是IE 7的情况,你可以在userAgent字符串中只搜索“MSIE 7”。搜索字符串的方法之一是indexOf()方法。在字符串之后添加一个句点,然后是indexOf(),并且提供你要查找的字符串。基本的结构如下所示:
string.indexOf('string to look for')

indexOf()方法返回一个数字:如果没有找到搜索字符串,该方法返回-1。因此,如果你想要检查Internet Explorer,可以这样做:

var browser=navigator.userAgent;//this is a string
if(browser.indexOf('MSIE')!=-1){
//this is Internet Explorer
}

在这个例子中,如果indexOf()没有在userAgent字符串中找到'MSIE',它将返回-1,因此,条件测试查看结果是否不等于(!=)-1。当indexOf()方法确实找到了要搜索的字符串,它返回一个数字,它等于要查找的字符串的开始位置。如下的示例使得事情更加清晰一些:

var quote='To be, or not to be.'
var searchPosition=quote.indexOf('To be');//returns 0

在这里,indexOf()在字符串'To be, or not to be.'中搜索'To be'的位置。较大的字符串以'To be'开始,因此,indexOf()在第一个位置就找到了'To be'。但是,按照编程的方式,第一个位置认为是0,第二个字母(o)在位置1,并且第三个字母(在这个例子中是一个空格)是2。

indexOf()方法从字符串的开头开始搜索。你也可以使用lastIndexOf()方法,从字符串的末尾开始搜索。例如,在莎士比亚的名言中,单词'be'出现在两个位置,因此,可以使用indexOf()找到第一个'be',并使用lastIndexOf()找到最后一个'be':

var quote="To be, or not to be."
var firstPosition=quote.indexOf('be');//returns 3
var lastPosition=quote.lastIndexOf('be');//returns 17

在这两个例子中,如果'be'不存在于字符串中的任何位置,结果将会是-1;如果只有一个搜索字符串的实例,indexO f()和lastIndexOf()将会返回相同的值,也就是搜索字符串在较大的字符串中开始的位置。

以上所述就是本文的全部内容了,希望大家能够喜欢。



相关阅读:
js实现ArrayList功能附实例代码
C标准库<assert.h>的实现详解
jQuery中ajax - get() 方法实例详解
Win8.1系统在安全模式下杀毒教程
Android 取得状态栏、任务栏高度的小例子
js检测网络是否具体连接功能的代码
用Autoconf检测MySQL软件包的教程
Android获取屏幕或View宽度和高度的方法
php文件服务实现虚拟挂载其他目录示例
C++设计模式之观察者模式
html5配合css3实现带提示文字的输入框(摆脱js)
JavaScript检测字符串中是否含有html标签实现方法
C#的SQL操作类实例
iOS中的NSURLCache数据缓存类用法解析
快速导航
PHP MySQL HTML CSS JavaScript MSSQL AJAX .NET JSP Linux Mac ASP 服务器 SQL jQuery C# C++ java Android IOS oracle MongoDB SQLite wamp 交通频道 作文范文 东丰-松树镇 塔崖驿-奇峰塔 定西-柳江 海拉尔-哈达 宿州东-义乌 苏州北-郑州 工农湖-隆化 息县-深圳 临海-泉州 雅河-丹东 天津-蓟县 锦州南-合肥 晋江-长临河 开原-尚家 横江-邓家湾 苇河-宝林 河津-临汾 闻喜-郑州 弋阳-宜兴 南昌西-惠安 海安县-株洲 晋城-常州 江华-邵东 金山屯-带岭 温岭-桐乡 泡子-查布嘎 衡阳-万州 石林-秧草地 沟帮子-汤阴 石门县北-巨野 宣城-郑州 永修-泰宁 襄阳东-无锡 福泉-简阳 福安-温州南 大兴-小扬气 商丘-郯城 大孤山-丹东西 太原南-济南 邢台-紫阳 朱家沟-兰岭 北京西-正定机场 徐州-抚宁 霸州-饶阳 石家庄北-上海南 旌德-天津西 兴泉堡-景泰 曲靖-北戴河 哈克-岭南 朝天-凤县 庐山-重庆北 晋江-饶平 大辛庄-获嘉 兴隆镇-下马塘 桐梓-贵阳 铁岭-通化 鹰潭-溆浦 滦县-宣汉 沈阳北-金华 青岛北-厦门北 齐齐哈尔-长虹 三十家-沈阳 褚家湾-中宁南 七苏木-兴和 布敦化-哈日努拉 丽水-九江 免渡河-海城 宣汉-鄯善 郴州-锦州 沟帮子-龙江 沙海-四道湾 泰和-忻州 鹿寨-南宁 郴州西-枣庄 万源-石家庄北 吐哈-邹城 惠州-黄石 博克图-苏家屯 五原-昌平北 平遥-洪洞 威海大风车影视城票价
从临汾列车火车站到陕西几点有列车火车啊
上海到郑州直达车都有那些车次?
河北邯郸大货车的查询方法
从洛阳到郸城的客车
高分急求:杭州北站到四季青童装批发市场的路线,谢谢,越细
武昌到上海的火车列车沿途经过哪些站点
沈阳世博园 公交_沈阳世博园 公交
浙江 金华到昆明 瑞丽
石家庄到西安都路过什么站?
烟台汽车客车总站到青岛最早几点有车
从济宁到大连的路线
从四方内蒙古路长途车站,做几路车到青岛儿童医院 新院
通辽到赤峰一天发几趟车
从石首到海口要怎么坐车
在宁波北仑有去江西吉安或南昌的客车汽车么…那位朋友知道告知
能告诉我兰州周边三日游有哪些景点吗
谁可以给我提供一份四月十八日火车提速以后的火车列车时刻表
有从盘锦到大港的火车吗
谁能告诉我几个达州市区内的景点吗
张家口南列车火车站附近有没有实惠卫生安全一点的住宿的地方 谢
从广东汕头寄信到湖北松滋要多久
请问,从石首坐车到荆门,到站是在荆门的哪个车站离这个车
4485次火车最新信息
温州到金华客车的时间
大家帮忙查个快递到哪了E邮宝的谢谢
广州到上饶的圆通快递要几天
永泰路环林东路到上海市临港科技学校有什么公交车
郑州到邯郸的客车汽车从哪里坐
谁知道5月4号7-23点时间段从黄石新火车站到上海南站

Copyright © 2016 phpStudy |