Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 基于参数从数组中获取项_Jquery_Underscore.js - Fatal编程技术网

Jquery 基于参数从数组中获取项

Jquery 基于参数从数组中获取项,jquery,underscore.js,Jquery,Underscore.js,我有一个对象数组。构造函数是 Planet : function(planet) { this.name = planet.name; this.percComp = planet.percComp; this.preReq = planet.preReq; } 是否有一种方法可以使用jquery或下划线根据objects参数从数组中获取一个或多个对象 差不多 _getItem(planetArray, Planet.name === 'Mars') 这就是jQuer

我有一个对象数组。构造函数是

Planet : function(planet)
{
    this.name = planet.name;
    this.percComp = planet.percComp;
    this.preReq = planet.preReq;
}
是否有一种方法可以使用jquery或下划线根据objects参数从数组中获取一个或多个对象

差不多

_getItem(planetArray, Planet.name === 'Mars')
这就是jQuery方法的用途:

var theObject = $.grep(planetArray, function (el) {
    return el.name === 'mars';
})[0];
这里有一把小提琴:

这就是jQuery方法的用途:

var theObject = $.grep(planetArray, function (el) {
    return el.name === 'mars';
})[0];
这是小提琴:

您可以使用:

这将返回符合条件的对象数组。

您可以使用:


这将返回符合条件的对象数组。

尝试下划线的
where
方法

_.where(listOfPlanets, {name: "Mars"});
假设你有以下行星列表-
prop
是一个虚构的属性

var listOfPlanets = [
    { name: 'Mercury', prop:1},
    { name: 'Venus', prop:2},
    { name: 'Earth', prop:3},
    { name: 'Mars', prop:4},
    { name: 'Jupiter', prop:5},
    { name: 'Saturn', prop:6},
    { name: 'Uranus', prop:7},
    { name: 'Neptune', prop:8} ];
要获得火星物体,只需执行以下操作。请记住,
返回一个匹配数组。访问索引
0
或使用
\将需要首先

var mars = _.where(listOfPlanets, {name: "Mars"})[0];
console.log(mars.prop);    // 4
下划线还有一个
.find
方法,可用于仅检索第一个匹配项

var mars = _.find(listOfPlanets, function(p){ return p.name === 'Mars' });
console.log(mars.prop);    // 4

JSFiddle here:

尝试下划线的
where
方法

_.where(listOfPlanets, {name: "Mars"});
假设你有以下行星列表-
prop
是一个虚构的属性

var listOfPlanets = [
    { name: 'Mercury', prop:1},
    { name: 'Venus', prop:2},
    { name: 'Earth', prop:3},
    { name: 'Mars', prop:4},
    { name: 'Jupiter', prop:5},
    { name: 'Saturn', prop:6},
    { name: 'Uranus', prop:7},
    { name: 'Neptune', prop:8} ];
要获得火星物体,只需执行以下操作。请记住,
返回一个匹配数组。访问索引
0
或使用
\将需要首先

var mars = _.where(listOfPlanets, {name: "Mars"})[0];
console.log(mars.prop);    // 4
下划线还有一个
.find
方法,可用于仅检索第一个匹配项

var mars = _.find(listOfPlanets, function(p){ return p.name === 'Mars' });
console.log(mars.prop);    // 4
请点击此处: