通过Name Jquery数组查找id

时间:2013-10-28 12:16:06

标签: javascript

我有一系列学生(所有ID都是唯一的):

[Object {ID: 1, "John"}, Object  {ID: 2, "Joseph"} ]

我有另一个字符串数组["John","Ram"](我们称之为“数组2”)。 如何在阵列2中找到名字所在的学生的ID(不考虑大小写,即不区分大小写)?

1 个答案:

答案 0 :(得分:1)

编辑:删除jQuery并修复区分大小写的问题。请注意,由于在map()上使用了forEach()indexOf()Array.prototype,因此no longer compatible with IE8

这些方面的东西可以解决问题:

var names = ['John', 'Joe', 'Ralph'],
    data = [
        {
            id: 1,
            name: 'John'
        },
        {
            id: 2,
            name: 'Joseph'
        },
        {
            id: 3,
            name: 'ralph'
        }
    ],
    results = [];

var lnames = names.map(function(name) {
    return name.toLowerCase();
});

data.forEach(function(item) {
    if (lnames.indexOf(item.name.toLowerCase()) > -1) {
        results.push(item.id);
    }
});

console.log('found: ', results);

以下是一个实例:http://jsfiddle.net/6ptz3/2/