我正在尝试获取已登录Facebook用户的朋友。我使用fql,我想更新搜索框中输入的每个字母的列表。我在fql中这样做,这样就行了。
我碰巧读到最好一次阅读所有朋友,然后搜索JSON对象。
对于数组
[{"uid":"1235","name":"user1_abcde","picture":"picurl"},
{"uid":"1237","name":"user2_abcde","picture":"picur2"},
{"uid":"1289","name":"user3_agere","picture":"picur3"}
]
如何排序,在数组中获取搜索字符串的结果(例如:“de”)部分匹配名称字段以返回
[{"uid":"1235","name":"user1_abcde","picture":"picurl"},
{"uid":"1237","name":"user2_abcde","picture":"picur2"}
]
由于
答案 0 :(得分:0)
var searchFriend = function( str ){
/* make search case-insensitive */
str = str.toLowerCase();
/* assuming `friendsArray` is your cached JSON response */
return friendsArray.filter(
function( i ){ return (i['name'].toLowerCase().indexOf( str ) > -1) }
);
}
答案 1 :(得分:0)
首先,您需要解析json,然后使用正则表达式进行搜索。
function search(json, regex) {
var result = [];
$.each(JSON.parse(json), function(i, row) {
if (row.name.match(regex)) {
result.push(row);
}
});
return result;
}
您可以使用该功能搜索de search(json, /de/)