2013-04-21 36 views
0

在用户对象中,有一个特征数组:如何在Parse API中进行嵌套查询?

技能:{“piano:10”,“singing:5”,....};

然后我想选择'钢琴'技能的用户,我该怎么做? 它不会完全匹配,但它有相同的规则:以字符串'钢琴'开头

谢谢!

我试图通过查询:

var query = new Parse.Query(Parse.User); 
query.startsWith('skills', skill); 

,但不起作用。我试图使用包含,也不工作... 任何意见将不胜感激!

+0

而你的代码是? – Joseph 2013-04-21 23:06:57

+0

哪里是用户数组/对象样本循环?显示的代码片段不足以映射新数据 – charlietfl 2013-04-21 23:28:17

+0

'$ .map'对于这种情况非常适用 – charlietfl 2013-04-22 00:15:53

回答

0

为了从数组中提取子集,我发现reduce非常方便。这是我该怎么做:

var arr = [{piano:3, guitar:8, name: 'benny'}, {drums:4, name: 'anna'}]; 

arr.reduce(function (ack, current) { 
    if (current.hasOwnProperty('piano')) { 
     ack.push(current); 
    } 
    return ack; 
}, []); 

// Result: [{piano:3, guitar:8, name: 'benny'}];