📜  Underscore.js _.findIndex()函数

📅  最后修改于: 2022-05-13 01:58:10.518000             🧑  作者: Mango

Underscore.js _.findIndex()函数

_.findIndex()函数:

  • 它用于查找在第二个参数中传递的元素的索引。
  • 我们可以将它用于任何类型的数组,如数字数组、字符串数组、字符数组等。
  • 如果我们不知道数组中的所有元素是什么,但我们想知道单个元素是否存在,那么我们使用这个函数。

句法:

_.findIndex(array, predicate, [context])

参数:
它需要三个参数:

  • 数组
  • 谓词
  • 上下文(可选)

返回值:
它返回要搜索的元素所在的索引。例子:

  1. 将仅包含一个键的列表及其值传递给 _.findIndex()函数:
    ._findIndex()函数从列表中一一获取元素,并将其与作为第二个参数传递的元素进行比较。如果它们匹配,那么它返回它的索引,否则它只是跳过这个元素并继续下一个。这个过程一直持续到找不到匹配项或列表完成。如果列表完成但没有找到传递的元素,则结果为 -1。
    
    
       
    
        
    
       
    
        
    
       
    
    

    输出:

  2. 将完整结构传递给 _.findIndex()函数:
    我们甚至可以将具有许多属性的结构传递给 _.findIndex()函数,它会以相同的方式工作。为此,我们还需要提及需要比较哪些属性。就像下面的例子一样,数组有 3 个属性,is、name、last。其中我们已经提到我们想要比较并找出名字为“Teddy”的元素的索引。
    
    
       
    
        
    
       
    
        
    
       
    
    

    输出:

  3. 将属性与数字进行比较:
    在此,我们传递了与上述相同的结构,但我们使用属性来匹配和比较包含数字的“id”。它将以相同的方式工作并比较所有 id,直到我们得到第二个参数中提到的 id 为 '3'。
    
    
       
    
        
    
       
    
        
    
       
    
    

    输出:

  4. 在第二个参数中传递列表中不存在的元素:
    如果我们传递一个列表不包含的元素,那么结果将是一个负数 -1。不会有错误。这是列表结束但元素不存在于其中的情况。
    
    
       
    
        
    
       
    
        
    
       
    
    

    输出:

笔记:
这些命令在 Google 控制台或 Firefox 中不起作用,因为需要添加他们没有添加的这些附加文件。
因此,将给定的链接添加到您的 HTML 文件中,然后运行它们。
链接如下:



一个例子如下所示: