Javascript 对象数组中的indexOf()方法

Javascript 对象数组中的indexOf()方法

在本文中,我们将学习Javascript中对象数组中的indexOf()方法。indexOf()方法提供给定元素首次出现的索引,如果不存在于数组中则返回-1。

语法:

indexOf(element)  
indexOf(element, start);  

参数:

  • element: 要在输入数组中搜索的元素
  • start: 搜索开始的索引。默认值为0

返回值:

JavaScript indexOf() 方法返回元素存在的索引值,如果元素不存在则返回-1。

要访问具有对象值的数组中对象的索引,我们将使用JavaScript的map方法来实现indexOf()方法。

JavaScript map() 方法:

该方法创建一个单独的数组,并为每个数组元素调用一个函数。该方法对数组中的每个元素调用指定的函数一次,并保持顺序。

语法:

Array.map(function(cValue, ind, Arr), tValue)  

示例1: 该示例通过 map() 方法获取 val_32 的索引。

let GFG_Array = [
    {
        prop_1: "val_11",
        prop_2: "val_12",
    },
    {
        prop_1: "val_21",
        prop_2: "val_22",
    },
    {
        prop_1: "val_31",
        prop_2: "val_32",
    },
];
console.log(JSON.stringify(GFG_Array));
 
function gfg_Run() {
    let pos = GFG_Array.map(function (e) {
        return e.prop_2;
    }).indexOf("val_32");
    console.log(
        "Index of 'val_32' value object is = " + pos
    );
}
gfg_Run();

输出

[{"prop_1":"val_11","prop_2":"val_12"},{"prop_1":"val_21","prop_2":"val_22"},{"prop_1":"val_31","prop_2":"val_32"}]
Index of 'val_32' value object is = 2

示例2: 此示例未获取值,因此返回-1并打印 未找到!

// In put array of objects
let GFG_Array = [
    {
        prop_1: "val_11",
        prop_2: "val_12",
    },
    {
        prop_1: "val_21",
        prop_2: "val_22",
    },
    {
        prop_1: "val_31",
        prop_2: "val_32",
    },
];
// Display Input
console.log(JSON.stringify(GFG_Array));
 
// Function to check index
function gfg_Run() {
    let pos = GFG_Array.map(function (e) {
        return e.prop_2;
    }).indexOf("val_42");
    if (pos == "-1") pos = "Not Found";
     
    // Display output
    console.log(
        "Index of 'val_42' value object is = " + pos
    );
}
gfg_Run();

输出

[{"prop_1":"val_11","prop_2":"val_12"},{"prop_1":"val_21","prop_2":"val_22"},{"prop_1":"val_31","prop_2":"val_32"}]
Index of 'val_42' value object is = Not Found

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程