_includes中的负数无法正常工作。
console.log(_.includes(['a','b','c'],'b', -1)); //false
console.log(_.includes(['a','b','c'],'b', -2)); //true
console.log(_.includes(['a','b','c'],'b', -3)); //true
console.log(_.includes(['a','b','c'],'b', -4)); //true
...等等“真”
在“ -3”,“-4”索引的情况下,我期望输出为False-s,而不是True
我想念什么?
答案 0 :(得分:2)
_.includes(collection, value, [fromIndex=0])
检查
value
中是否有collection
。如果collection
是字符串,则为 检查value
的子字符串,否则SameValueZero
是 用于相等比较。 如果fromIndex
为负,则使用 作为距collection
末尾的偏移量。自
0.1.0
参数
collection (Array|Object|string)
:要检查的集合。value (*)
:要搜索的值。[fromIndex=0] (number)
:要搜索的索引。返回
(boolean)
:如果找到值,则返回true,否则返回false。
@EDIT
示例
_.includes(['a','b','c','d'],'b', -3); //=> true
从'b'
开始,并且由于'b'
包含在子数组中,因此您得到true
。
_.includes(['a','b','c','d'],'b', -2) //=> false
从'c'
开始,并且由于'b'
不包含在子数组中,因此得到false
。
答案 1 :(得分:1)
negative
索引就像
array[array.length - index]
在数组['a','b','c']
中,-1
将是'c'
array[3 - 1] = array[2] = 'c'
// ^ length of `['a','b','c']`
在_.includes(['a','b','c'],'b', -3)
array[3 - 3] = array[0]
// ^ length of `['a','b','c']`
它开始从索引'b'
到索引0
搜索3