1,数组不能为null,抛出错误

2,数组长度为0,返回-1

3,传入的起始位置无穷大(Infinity),把起始位置重置为0

4,传入的起始位置大于数组长度,返回-1

5,/传入的起始位置可以是正数,也可以是负数(如果负数超出长度取0)

6,找到返回下标k

Array.prototype.indexof=function(value,index){//引用者不能为空if(this==null){throw new TypeError('kkkk')}//保存该数组var o=Object(this)var len=o.length>>>0//数组长度为0if(len===0){return -1}//开始的位置var n=index ||0//如果传入的起始位置无穷大if(Math.abs(n)===Infinity){n=0}//起始位置大于数组长度if(n>=len){return -1}//传入的起始位置可以是正数,也可以是负数(如果负数超出长度取0)var k=Math.max(n>=0?n:len-Math.abs(n),0)//从起始位置开始查找while(k<len){if(k in o && o[k]===value){return k}k++}//如果找不到return -1}let arr=[1,2,3,4,5]
console.log(arr.indexof(3)) //2

实现indexof()相关推荐

  1. js中substr,substring,indexOf,lastIndexOf的用法

    js中substr,substring,indexOf,lastIndexOf等的用法 1.substr substr(start,length)表示从start位置开始,截取length长度的字符串 ...

  2. 小程序在wxml使用indexOf

    QQ技术交流群 173683866 526474645 欢迎加入交流讨论,打广告的一律飞机票 demo场景: 有两个数组,页面渲染一个数组1,数组2中有数组1随机下标的值,判断数组1是否包含数组2的值 ...

  3. IE8下不识别indexOf的问题

    1.为Array原型添加indexOf方法(如果学过面向对象,相当于给Array类添加实例方法),方法体如下: //添加数组IndexOf方法 if (!Array.prototype.indexOf ...

  4. js数组中indexOf/filter/forEach/map/reduce详解

    今天在网上看到一篇帖子,如题: 出处:前端开发博客 (http://caibaojian.com/5-array-methods.html) 在ES5中一共有9个Array方法,分别是: Array. ...

  5. java string.indexof(string)_Java StringBuffer indexOf()方法

    Java StringBuffer indexOf()方法 java.lang.StringBuffer.indexOf(String str, int fromIndex) 方法返回此字符串指定的子 ...

  6. String indexOf 算法

    2019独角兽企业重金招聘Python工程师标准>>> /*** Code shared by String and StringBuffer to do searches. The ...

  7. 使用js的indexOf,lastIndexOf,slice三函数轻易得到url的服务器,路径和页名

    js的indexOf,lastIndexOf,slice能帮我们在js字符串处理时少走一些弯路. 程序如下: var url="http://www.cnblogs.com/xiandeda ...

  8. javascript的indexOf忽略大小写

    javascript 中 indexOf 是严格区分大小写的 如何才能忽略大小写呢? 把他们全都换成大写或小写,再比较就可以了 indexOf对象内第一次出现子字符串的字符位置 用toLowerCas ...

  9. jquery 常用方法 delegate() siblings() closest() indexOf() substring()

    siblings() 获得匹配集合中每个元素的同胞,通过选择器进行筛选是可选的. closest() 方法获得匹配选择器的第一个祖先元素,从当前元素开始沿 DOM 树向上. //删除行 functio ...

  10. 为什么indexOf在数组IE8上不起作用?

    本文翻译自:Why doesn't indexOf work on an array IE8? The below function works fine on Opera, Firefox and ...

最新文章

  1. markdown 常用格式
  2. OpenCV中Mat属性step,step1,elemSize,elemSize1
  3. 类加载器-双亲委派-源码分析2
  4. ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
  5. 分析java中文乱码的原因
  6. python 报错继续执行_Python报错不要慌,这三个关键词帮你解决问题!
  7. 隐私与AI兼得,蚂蚁金服是如何做到的?
  8. int *p=new int; int *p=new int[10]; int *p=new int(10);这三个有什么区别
  9. 先查询后修改并发的时候sql_SQL调优总结
  10. 日本研发圆滚滚的球形无人机,被LED屏团团包围
  11. LSB最低有效位算法实现
  12. Reactor 线程模型
  13. zuc算法代码详解_ZUC算法原理及实现过程[共3页]
  14. html播放韰 寸 频,asp.net 汉字转换拼音及首字母实现代码
  15. iOS @available 和 #available 的用法
  16. 关于jul桥接slf4j失败问题的探究
  17. 如何使用Excel绘制图表?
  18. 【Python】Pandas GroupBy 深度总结
  19. 小程序 input自动聚焦唤起键盘
  20. 一年时间,从一个浑浑噩噩的测试小人物到测试主管的成长之路

热门文章

  1. 电脑应用程序错误怎么办_电脑Windows出错信息解析及解决方案
  2. 前端date format_前端面试-手撕代码篇
  3. c语言可变参数 printf,c语言 使用可变参数列表实现printf(my_printf)
  4. java连接oracle失败_程序连接oracle数据库失败
  5. 启动vue项目报错faield at the vue-cli-service serve
  6. 【31】将文件间的编译依存关系降至最低
  7. (2) OpenSSL命令
  8. c/c++ 数组和指针
  9. 存储过程/函数权限的问题解决(The user specified as a definer ('root'@'%') does not exist)...
  10. Tomcat中设置数据源和连接池