当我写一些JavaScript时,我遇到了一个新代码" indexOf"。阅读another post之后,我认为它的行为如下所示,但似乎并非如此。有人可以给我一个解释" indexOf",拜托?
false = -1; 是= 0还是更多?
我试图将-1更改为0甚至更多但是没有任何反应。只是为了更好地理解jquery / indexOf。
我现在拥有的,
$(this).closest(row)[td_word.indexOf(keyword) !== -1 ? 'show' : 'hide']();
搜索"关键字"的匹配项来自" td_word", 如果它不是假的(!== -1,因此是真的)显示:visible;, 如果不是真(假)显示:hide;。
提前致谢。
答案 0 :(得分:6)
array.indexOf(element)
返回数组中元素的索引。另请阅读official documentation。
它被设计为在元素不存在时返回-1
,因为0
意味着元素在第0个索引(第1个元素)中。
var array = ['a','b','c','d','e'];
array.indexOf('a') //0
array.indexOf('c') //2
array.indexOf('f') //-1, because it doesn't exist in array
根据我对你的措辞的理解,我认为你认为indexOf
用于检查数组中是否存在某个元素。这只是一个"副作用" indexOf
但它的实际用法是获取数组中元素的索引。