1.Array.indexOf()方法返回在数组中可以找到一个给定元素的第一个索引,如果不存在,则返回-1。

语法:arr.indexOf(searchElement[, fromIndex])

参数:

searchElement:需要查招的元素

fromIndex:开始查找的位置。如果该索引值大于或等于数组长度,意味着不会在数组里查找,返回-1。如果参数中提供的索引值是一个负值,则将其作为数组末尾的一个抵消,即-1表示从最后一个元素开始查找,-2表示从倒数第二个元素开始查找 ,以此类推。 注意:如果参数中提供的索引值是一个负值,并不改变其查找顺序,查找顺序仍然是从前向后查询数组。如果抵消后的索引值仍小于0,则整个数组都将会被查询。其默认值为0.

返回值:首个被找到的索引位置,如果找不到则返回-1

例子:

let arr = [1,2,3,4,5,4,3,2,1];console.log(arr.indexOf(1)); // 没有填fromIndex所以默认从索引为0的位置开始往后查找
// 0
console.log(arr.indexOf(1,1)); // 表示从索引为1的位置开始往后查找
// 8

案例:利用indexOf实现数组去重

// 想要的结果是[1,2,3,4,5]
let arr = [1, 2, 3, 1, 2, 4, 5];
// 利用arr.filter遍历出arr数组里的所有值和相对索引
let newArr = arr.filter(function (value, index, step) {// 判断他第一次出现的位置是不是当前索引,是的话返回给newArrreturn step.indexOf(value) == index;
});
console.log(newArr);
// [1,2,3,4,5]

扩展:上面代码中的filter的使用:点击查看

2.String.indexOf() 方法返回调用它的 String 对象中第一次出现的指定值的索引,如果不存在,则返回-1。

语法:str.indexOf(searchElement[, fromIndex])

参数:

searchStr:需要查招的字符

fromIndex:开始查找的位置。如果该索引值大于或等于数组长度,意味着不会在数组里查找,返回-1。如果参数中提供的索引值是一个负值,则将其作为数组末尾的一个抵消,即-1表示从最后一个元素开始查找,-2表示从倒数第二个元素开始查找 ,以此类推。 注意:如果参数中提供的索引值是一个负值,并不改变其查找顺序,查找顺序仍然是从前向后查询数组。如果抵消后的索引值仍小于0,则整个数组都将会被查询。其默认值为0.

返回值:首个被找到的索引位置,如果找不到则返回-1

例子:

let str = 'abcdcba';console.log(str.indexOf('a')); // 没有填fromIndex所以默认从索引为0的位置开始往后查找
// 0
console.log(str.indexOf('a',1)); // 表示从索引为1的位置开始往后查找
// 6

str.indexOf有一个奇怪的现象,当searchStr是一个空字符串的时候,他会返回fromIndex的值,比如fromIndex不填的时候他默认是0,他返回的结果就是0。

如果fromIndex的值是他本身的长度还是大于他,他都会返回他本身的length,直接看代码

let str = 'abcdcba';console.log(str.indexOf(''));
// 0
console.log(str.indexOf('',0));
// 0
console.log(str.indexOf('',3));
// 3
console.log(str.indexOf('',str.length));
// 7
console.log(str.indexOf('',100));
// 7

案例:屏蔽关键是:wc

let str = 'on tow wc tow wc on';
let k = 'wc';
while (str.indexOf(k) != -1){str = str.replace(k,'*' * k.length);
}
console.log(str);
// on tow * tow * on

扩展:str.replace的使用

JS indexOf 用法相关推荐

  1. js indexof用法indexOf()定义和用法

    indexOf()定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(searchvalue,fromindex) ...

  2. js indexof用法

    indexOf()定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(searchvalue,fromindex) ...

  3. oracle中类似indexof用法_instr函数

    oracle中类似indexof用法_instr函数 [sql] 在oracle中没有indexof()函数 但是提供了一个 instr() 方法 具体用法: select instr('保定市南市区 ...

  4. Javascript模块化编程require.js的用法

    JS模块化工具requirejs教程(一):初识requirejs http://www.runoob.com/w3cnote/requirejs-tutorial-1.html JS模块化工具req ...

  5. Moment.js常见用法总结

    From: https://www.jianshu.com/p/9c10543420de Moment.js常见用法总结 Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中 ...

  6. Moment.js常见用法总结 1

    Moment.js常见用法总结 Moment.js是一个轻量级的JavaScript时间库,它方便了日常开发中对时间的操作,提高了开发效率. ​ 日常开发中,通常会对时间进行下面这几个操作:比如获取时 ...

  7. Toastr.js插件用法

    toastr.js插件用法 toastr.js是一个基于jQuery的非阻塞通知的JavaScript库.toastr.js可以设定四种通知模式:成功.出错.警告.提示.提示窗口的位置.动画效果等都可 ...

  8. highlight.js css,JS库之Highlight.js的用法详解

    下载到本地后,新建个页面测试 1.在head中加入css和js的引用 highlight hljs.initHighlightingOnLoad(); 2.添加对应要显示的内容 # 读取文件内容 de ...

  9. js截取图片 裁剪图片之cropper.js插件用法详解

    js截取图片 裁剪图片之cropper.js插件用法详解 源码:https://github.com/fengyuanchen/cropper 引入+使用 <link href="/p ...

  10. js indexOf使用及注意事项以及数组使用indexOf

    一.定义和用法 indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置. 语法 stringObject.indexOf(searchvalue,fromindex) 参数 描述 s ...

最新文章

  1. 它又来了!C**HashMap是如何保证线程安全的?会用不就完了?
  2. 腾讯35亿美元抄底收购搜狗,产品张小龙和技术王小川双剑合璧
  3. 寻找可用的机器学习算法
  4. freeswitch 把SIP注册信息数据库从SQLITE 改为MYSQL的方法
  5. c/c++里面的变长参数的实现
  6. Android之canvas详解
  7. Exchange2010应用地址列表
  8. 当前页面跳转网页,新打开和在本页面打开
  9. 组织体互联网是个啥?
  10. 【干货】Python编程惯例
  11. 液晶拼接处理器_创新维OLED拼接屏施工单位操作说明
  12. html怎样在雪景里插入文字,下雪朋友圈怎么配文字 雪景发朋友圈配一句话
  13. 灵雀云Kube-OVN:基于OVN的开源Kubernetes网络实践
  14. w3c标准的深入理解
  15. 对一个整形数组进行顺序排列
  16. 记录常用的xss攻击代码,便于测试系统安全漏洞
  17. 股票K线指标算法整理(Java封装工具类)
  18. Vue 点击事件写法
  19. 泛融科技CEO王小彬:区块链技术创造新商业模式
  20. linux 命令断网,linux 断网 扫描基本命令(示例代码)

热门文章

  1. 质因数分解的一些讨论(Pollard-Rho算法)
  2. MQTT 基础--MQTT 协议简介 :第 1 部分
  3. SpringCloud面试题及答案(2021年SpringCloud面试题大全带答案)
  4. Spring总结一(整体概览)
  5. 网易云课堂整站源码 THINKPHP二开仿网易云课堂
  6. 怎样组建家庭计算机网络,不要再求人了,教你最详细的家庭网络组建方法。
  7. 一元函数积分学基本计算例题
  8. 嵌入式系统设计师考试完美笔记
  9. js 实现全国省市区三级联动
  10. 如何完美实现微信自动发朋友圈自动添加好友等等