我有一个JSON文件,我只需要检索十个最高分的项目:
我的数据:
{
"movies" : {
"eraserhead" : {
"full_title" : "Eraserhead",
"votes": 50
},
"psycho" : {
"full_title" : "Psycho",
"votes" : 90
}
}
}
Run Code Online (Sandbox Code Playgroud)
等等,大约50 - 100的列表.
我知道我可以迭代并构建一个列表,但我很好奇是否有任何较少的处理器密集型方法来根据该属性(movies[title].votes)过滤这些结果.
非常感谢任何帮助,谢谢.
最简单的方法是创建一个数组,对数组进行排序并获取前10个元素.
var myArray = [];
for (var key in movies) {
var movie = movies[key];
movie.title = key;
myArray.push(movie);
}
var tenFirst = myArray.sort(function(a,b){return b.votes-a.votes}).slice(0,10);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58 次 |
| 最近记录: |