[英]jQuery find the match value in the multidimensional array/object
How to write this script properly so I can match the value on the object. 如何正确编写此脚本以便我可以匹配对象上的值。
var objGroup = [
{ "color": "YELLOW", "number": "11,7,44,22" },
{ "color": "BLUE", "number": "8,20,9" },
{ "color": "GREEN", "number": "12,34,55" }
];
objGroup.map(function (groupNum) {
if (groupNum.number== "11") {
alert(groupNum.color);
} else {
return null
}
});
This will return the object that has a number value that contains the supplied number. 这将返回具有包含所提供的数字的数字值的对象。
var objGroup = [
{ "color": "YELLOW", "number": "11,7,44,22" },
{ "color": "BLUE", "number": "8,20,9" },
{ "color": "GREEN", "number": "12,34,55" }
];
var found = findItem(objGroup, '11');
function findItem(array, value) {
for (var i = 0; i < array.length; i++) {
if (array[i].number.split(',').indexOf(value) >= 0) {
return objGroup[i];
}
}
}
if (found) {
alert(found.color);
}
http://jsfiddle.net/rVPu5/ http://jsfiddle.net/rVPu5/
Alternative using newer .filter function which won't be as widely supported: 替代使用更新的.filter函数,它不会得到广泛支持:
var found = objGroup.filter(function(item) {
if (item.number.split(',').indexOf('11') >= 0) {
return true;
}
return false;
});
if (found.length > 0) {
alert(found[0].color);
}
http://jsfiddle.net/rVPu5/2/ http://jsfiddle.net/rVPu5/2/
Finally - the jQuery version: 最后 - jQuery版本:
var found = $.map(objGroup, function(item) {
if (item.number.split(',').indexOf('11') >= 0) {
return item;
}
});
if (found.length > 0) {
alert(found[0].color);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.