Javascript 根据条件从数组中获取一项
我有一个具有不同值的数组(在JSON结构中),我需要基于另一个值获取数组中的一个项 这就是我目前所做的:Javascript 根据条件从数组中获取一项,javascript,jquery,Javascript,Jquery,我有一个具有不同值的数组(在JSON结构中),我需要基于另一个值获取数组中的一个项 这就是我目前所做的: var orders= [{ "id": 1, "order": "11" }, { "id": 2, "order": "22" }, { "id": 3, "order": "33" }]; var order = $.grep(orders, function (e) { return e.order === '22'
var orders= [{
"id": 1,
"order": "11"
},
{
"id": 2,
"order": "22"
},
{
"id": 3,
"order": "33"
}];
var order = $.grep(orders, function (e) { return e.order === '22'; })[0];
var orderID = order ? order.id : 0;
这是最简单的方法吗 对于ES6,您可以使用
var orders=[{id:1,order:“11”},{id:2,order:“22”},{id:3,order:“33”},
订单=订单。查找(o=>o.order==“22”),
orderID=订单?订单号:0;
log(orderID)代码>对于ES6,您可以使用
var orders=[{id:1,order:“11”},{id:2,order:“22”},{id:3,order:“33”},
订单=订单。查找(o=>o.order==“22”),
orderID=订单?订单号:0;
log(orderID)代码>var myOrder=orders.find(o=>o==order)
您需要哪种浏览器支持?ES6为var order=orders.find(e=>e.order==order)
引入了find
。可能重复@Weedoze,Ryan,谢谢你的回答。var myOrder=orders.find(o=>o==order)
你需要什么样的浏览器支持?ES6为var order=orders.find(e=>e.order==order)
引入了find
。可能重复@Weedoze,Ryan,感谢您的回答。谢谢,这比grep
函数简单得多,谢谢!如果我需要获取找到的订单的id
,我需要第二行代码?无法在find
函数上执行此操作?find
如果未找到任何项,则返回undefined
。您需要稍后进行检查并获取id或默认值谢谢,这比grep
函数简单得多,谢谢!如果我需要获取找到的订单的id
,我需要第二行代码?无法在find
函数上执行此操作?find
如果未找到任何项,则返回undefined
。您需要稍后进行检查并获取id或默认值