的指标。如果我有一个数组这样:使用数组中对象的孩子的值来获得所述物体
var maskedlist = [
{id:-1,name:'*****选'},
{id:0,name:'*****(3天)'},
{id:1,name:'*****'},
{id:3,name:'*****'},
{id:2,name:'*****列'},
{id:4,name:'*****系列'},
{id:5,name:'*****系列'},
{id:6,name:'*****系列'},
{id:7,name:'*****系列'},
{id:8,name:'*****'},
{id:9,name:'*****系列'},
{id:10,name:'*****铺系列'},
{id:12,name:'*****列'},
{id:11,name:'*****系列'},
{id:13,name:'*****系列'},
{id:14,name:'*****'},
{id:15,name:'*****列'},
{id:100,name:'*****部测试号'},
{id:200,name:'*****厅体验版'},
{id:201,name:'*****'},
{id:202,name:'*****单店系列'},
{id:203,name:'*****多店系列'},
{id:16,name:'*****系列'},
{id:17,name:'*****系列'},
{id:204,name:'*****代运营套餐'},
{id:205,name:'*****活动运营'},
{id:206,name:'*****内容运营'},
{id:207,name:'*****商户运营'},
{id:208,name:'*****外卖系列'}
]
我将有一个变量incoming_id
将可能匹配一个obj的孩子id的值,假设它是205
。
所以在下面的新的OBJ:
var entity = {
selected: maskedlist[index]
}
现在我将如何能够得到incoming_id
index
?
很明显,我可以使用循环是这样的:
for (i = 0; i < maskedlist.length; i++) {
maskedlist[i].id == incoming_id && index = i
}
不会觉得很优雅寿,如果我有一个列表足够长那可真慢,可能会随时崩溃的浏览器时间。
这并不是高性能,因为Array.prototype.filter()会去数组的末尾'maskedlist'即使已经发现了'obj.id' –