用JavaScript或jQuery过滤

时间:2016-05-29 11:14:26

标签: javascript jquery arrays json sorting

我正在尝试从JSON文件(link to file)获取数据。    如果我必须按名称或发布年份排序,如何过滤    该2D阵列中的内容。

任何人都可以帮我解决这个问题。

3 个答案:

答案 0 :(得分:0)

使用jQuery.get()获取api响应,然后使用Array.prototype.sort()进行排序。

Year排序:



$.get("http://www.omdbapi.com/?s=Batman&page=2", (result) => {
    result.Search.sort((a, b, by) => {
        return a.Year < b.Year ? -1 : a.Year > b.Year ? 1 : 0;
    });
    console.log(result);
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您可以将原始Yosvel Quintero answer扩展为接受排序类型:

function sort(type) {
    $.get("http://www.omdbapi.com/?s=Batman&page=2", ({ Search }) => {   
        Search.sort((a, b) => a[type] > b[type]);
        console.log(`Sorted by: ${type}`);
        console.log(Search);
    });
}
sort('Year');
sort('Title');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 2 :(得分:0)

function sort(type) {
    $.get("http://www.omdbapi.com/?s=Batman&page=2", ({ Search }) => {   
        Search.sort((a, b) => a[type] > b[type]);
        console.log(`Sorted by: ${type}`);
        console.log(Search);
    });
}
sort('Year');
sort('Title');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

function sort(type) {
    $.get("http://www.omdbapi.com/?s=Batman&page=2", ({ Search }) => {   
        Search.sort((a, b) => a[type] > b[type]);
        console.log(`Sorted by: ${type}`);
        console.log(Search);
    });
}
sort('Year');
sort('Title');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>