Tôi muốn tìm chỉ mục trong mảng. Các vị trí trong mảng là các đối tượng và tôi muốn lọc các thuộc tính của chúng. Tôi biết những phím nào tôi muốn lọc và giá trị của chúng. Vấn đề là lấy chỉ mục của mảng đáp ứng các tiêu chí.Tìm chỉ mục trong mảng đối tượng
Hiện tại, tôi đã tạo mã để lọc dữ liệu và cung cấp cho tôi dữ liệu đối tượng, chứ không phải chỉ mục mảng.
var data = [
{
"text":"one","siteid":"1","chid":"default","userid":"8","time":1374156747
},
{
"text":"two","siteid":"1","chid":"default","userid":"7","time":1374156735
}
];
var filterparams = {userid:'7', chid: 'default'};
function getIndexOfArray(thelist, props){
var pnames = _.keys(props)
return _.find(thelist, function(obj){
return _.all(pnames, function(pname){return obj[pname] == props[pname]})
})};
var check = getIndexOfArray(data, filterparams); // Want to get '2', not key => val
không thực sự là một câu trả lời nhưng bạn có thể đã sử dụng '_.findWhere' để có được chính xác kết quả tương tự như những gì bạn có bây giờ – soulcheck