下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、详解JavaScript中数组和字符串的lastIndexOf()方法用法_ Atotype.lastIndexOf 和 Stotype.lastIndexOf 是特别的有用的方法,不过许多人不知道它其实可以传递两个参数,其次个参数决定了搜索的起始位置: 语法 str.lastIndexOf(searchValue, fromIndex) lastIndexOf() 方法返回指定值在调用该方法的字符串中最终消失的位置,假如没找到则返回 -1。从该字符串的后面对前查找,从 fromIndex 处开头。 参数 1.searchValue 一个字符串,表示被查找的值
2、。 2.fromIndex 从调用该方法字符串的此位置处开头查找。可以是任意整数。默认值为 str.length。假如为负值,则被看作 0。假如 fromIndex str.length,则 fromIndex 被看作 str.length。 区分大小写 lastIndexOf 方法区分大小写。例如,下面的表达式返回 -1: Blue Whale, Killer Whale.lastIndexOf(blue); / returns -1 lastIndexOf的用法 / Create an array. var ar = ab, cd, ef, ab, cd; / 找到最终一个CD的位置 do
3、cument.write(ar.lastIndexOf(cd) + br/); / 输出: 4 / 从正数其次个位置,搜索倒数第一个CD的位置 document.write(ar.lastIndexOf(cd, 2) + br/); / 输出: 1 / 从倒数第三个搜索最终一个ab的位置 document.write(ar.lastIndexOf(ab, -3) + br/); / 输出: 0 同样 String.lastIndexOf的用法类似 canal.lastIndexOf(a) / returns 3 canal.lastIndexOf(a,2) / returns 1 canal.
4、lastIndexOf(a,0) / returns -1 从第0个往前搜,不存在a,返回-1 canal.lastIndexOf(x) / returns -1 lastIndexOf的IE8实现 不过微软的IE8及其以下并不支持Array.lastIndexOf,需要兼容实现。可以参考: if (!Atotype.lastIndexOf) Atotype.lastIndexOf = function(searchElement /*, fromIndex*/) use strict; if (this = void 0 | this = null) thro
5、w new TypeError(); var n, k, t = Object(this), len = t.length 0; if (len = 0) return -1; n = len - 1; if (arguments.length 1) n = Number(arguments1); if (n != n) n = 0; else if (n != 0 n != (1 / 0) n != -(1 / 0) n = (n 0 | -1) * Math.floor(Math.abs(n); for (k = n = 0 ? Math.min(n, len - 1) : len - M
6、ath.abs(n); k = 0; k-) if (k in t tk = searchElement) return k; return -1; ; 可以用法 ES5-Slim 使旧版扫瞄器完全兼容ES5语法。 为什么要避开用法for in 不过要留意的是,在Atotype上面附加方法后,for in语法也会把lastIndexOf方法也枚举出来: for (var idx in 1,3,5,7,9) console.log(idx) 0 1 2 3 4 lastIndexOf 而应当用法 for loop实现 for (var idx = 0; idx 1,3,5,7,9.length; idx+) console.log(idx) 这个问题可以用法 Object.defineProperty 来实现,来避开for in的枚举出lastIndexOf方法: Object.defineProperty(Array, lastIndexOf, enumerable: false ) 不过一般需要兼容实现的扫瞄器根本不支持defineProperty 方法。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 借对方合同的协议
- 厨房保养合同范本
- 茶几购买合同范本
- 茶器订购合同范本
- 茶艺租赁合同范本
- 蜂箱采购合同范本
- 订购玩具合同范本
- 赠与资产合同范本
- 转租附加合同范本
- 钢结构转让合同范本
- 招商银行个人住房贷款合同
- 物业服务合同范本(2篇)
- 建筑行业材料供应商管理制度
- DLT 2299-2021火力发电厂设备缺陷管理导则
- JCJT3-2017 水泥机械设备安装工程施工及验收
- 大学生劳动教育(高职版)智慧树知到期末考试答案章节答案2024年深圳职业技术大学
- 中学集体备课实施方案
- 2024年浙江金华市轨道交通集团限公司招聘30人历年高频难、易点(公共基础测验共200题)模拟试卷新版
- 急诊科感染防控工作手册
- 高中班干部设置及分工
- 中国石化2023年年度财务报表及审计报告
评论
0/150
提交评论