Javascript 检索数组中的元素号

Javascript 检索数组中的元素号,javascript,Javascript,我有一个数组,其中的数据如下所示 var objects = [ { "rowid": 1, "Hostname": "11 Com" }, { "rowid": 2, "Hostname": "11 UMi" }, { "rowid": 3, "Hostname": "14 And" }, { "rowid": 5, "Hostname": "23 A" }]; 我试图得到每个对象的元素编号的位置。每个对象都由它们自己的“行

我有一个数组,其中的数据如下所示

var objects = [
 {
   "rowid": 1,
   "Hostname": "11 Com"
},
 {
   "rowid": 2,
   "Hostname": "11 UMi"
},
 {
   "rowid": 3,
   "Hostname": "14 And"
   },
 {
   "rowid": 5,
   "Hostname": "23 A"
   }];
我试图得到每个对象的元素编号的位置。每个对象都由它们自己的“行id”组成,这基本上就是我当前使用此函数检索它们的元素位置的方法:

 function findCorrespondingNumber(hostname) { 
        function search(am, im) { 
        if (am.Hostname === hostname) { 
            index = im; return true; } 
        } var index;
     if (objects.some(search)) { 
        return objects[index]['rowid']; 
    } 
}
var correspNumb = findCorrespondingNumber(name) - 1;
var fiff = objects[correspNumb]["Hostname"];

数据集的问题是数字有时会跳过序列。rowid3后面是5,而不是应该的4。这会导致进一步的代码出现问题,因此我需要使用它,以便将具有rowid5的对象读取为第四个对象。我将如何编写该代码?

我想您正在寻找,这是在ES2015中添加的。它接受一个谓词函数并返回谓词为其返回truthy值的第一个条目的索引(如果从未返回过,则返回-1):


这将为您提供基于0的索引(在您的示例中为0-3)。如果您想要基于1的索引(例如1-4;您确实说过“第三个条目返回
3
”),请在结果中添加一个

还有一个密切相关的,它执行相同的操作,但返回实际条目:

var entry = objects.find(function(entry) {
    return entry.Hostname == hostname;
});

两者都是新的,但都可以加垫片/填充聚合物。

我想您正在寻找,这是ES2015中添加的。它接受一个谓词函数并返回谓词为其返回truthy值的第一个条目的索引(如果从未返回过,则返回-1):


这将为您提供基于0的索引(在您的示例中为0-3)。如果您想要基于1的索引(例如1-4;您确实说过“第三个条目返回
3
”),请在结果中添加一个

还有一个密切相关的,它执行相同的操作,但返回实际条目:

var entry = objects.find(function(entry) {
    return entry.Hostname == hostname;
});

两者都是新的,但都可以加垫片/多填充。

您想要一个
函数
,该函数将返回给定输入
3
(索引)
23a
?通过“元素编号”,您是指数组索引吗?例如,你的例子中的0-3?或者。。。是否要按rowid对数组进行排序?如果要按顺序处理数组,这可能会有所帮助。对于数组中的第三个对象返回
3
<代码>23A只是另一个属性的名称,我想这与我需要的东西无关。我刚刚使用上面的函数根据特定的属性名称检索rowid编号。这必须是重复的。编辑:是的,查找起来有点棘手。您需要一个
函数
,该函数将为给定输入返回
3
(索引)
23a
?通过“元素编号”,您是指数组索引吗?例如,你的例子中的0-3?或者。。。是否要按rowid对数组进行排序?如果要按顺序处理数组,这可能会有所帮助。对于数组中的第三个对象返回
3
<代码>23A只是另一个属性的名称,我想这与我需要的东西无关。我刚刚使用上面的函数根据特定的属性名称检索rowid编号。这必须是重复的。编辑:是的,有点难找到。听起来OP想要1-basedindex@haim770:是的,那条“第三个条目返回
3
”的注释。听起来OP想要以1为基础的index@haim770:是的,那条“第三个条目返回
3
”的注释。