判断数组中是否含有某个值,返回true/false
用法
arr.includes(searchElement)
arr.includes(searchElement, fromIndex)
- searchElement:需要查找的元素值
- fromIndex: 从某个索引开始查找(可选)。如果为负,从array.length + formIndex处开始查,并跟0比取最大值。默认为0.
思路
- formIndex如果大于等于数组长度Array.length, 不查下去,return false。
- 数组长度AArray.length为0, 不查下去,return false。
- 设置开始循环判断的k值,默认为k为formIndex || 0,若formIndex小于0,k取formItem+Array.length和0相比的较大值。
- 从k处循环,直到k >= length跳出循环。判断如果数组中有值和searchElement相等,return true。
实现代码
1 | Object.defineProperty(Array.prototype, 'includes', { |
测试代码
1 | const includes = require('./index'); |