gpt4 book ai didi

javascript - 对 JavaScript 集合中的对象进行排序

转载 作者:行者123 更新时间:2023-12-02 16:26:18 25 4
gpt4 key购买 nike

friend 们,

我遇到以下问题。我有一个从 ASP.NET MVC Controller 以 JSON 形式返回的对象集合。在 View 中,我想根据名称属性按特定顺序对这些对象进行排序。

我尝试通过创建一个单独的 JS 数组来做到这一点。根据名称属性,我将对象插入到数组中的特定索引中。

我确信有更好的方法来解决这个问题。另外,我目前仅获得插入每个索引位置的“事件”的最后一个条件。下面是我迄今为止的代码。

非常感谢!

<script id="tmpl-refinement-results" type="text/template">
<% var sortedFacets = [] %>
<%_.each(SearchAggregationDetails, function(aggValue, y){

if(aggValue.FilterText = "News"){
sortedFacets[0] = aggValue;
}

if(aggValue.FilterText = "Articles"){
sortedFacets[1] = aggValue;
}

if(aggValue.FilterText = "Case Studies"){
sortedFacets[2] = aggValue;
}

if(aggValue.FilterText = "Nice Exhibit Case Studies"){
sortedFacets[3] = aggValue;
}

if(aggValue.FilterText = "Events"){
sortedFacets[4] = aggValue;
}

}) %>

<% _.each(sortedFacets, function(aggregation, i) { %>
<li>
<a href="<%=aggregation.TypeUrl %>"><%=aggregation.FilterText %> <span class="refinement-results-list num-val"> <%=aggregation.DocCount %></span></a>
</li>
<% }); %>

最佳答案

不确定您的 JSON exaclty 是什么样子。但是 UnderscoreJS 的 _.pluck() 应该适合你。

请参阅下面的演示以及此处的 jsFiddle .

var obj = {
post1 : {
category: "News"
},
post2 : {
category: "Articles"
},
post3 : {
category: "Case Studies"
},
post4: {
category: "Nice Exhibit Case Studies"
},
post5: {
category: "Events"
}
};

console.log(_.pluck(obj, 'category'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.1/underscore-min.js"></script>

关于javascript - 对 JavaScript 集合中的对象进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28651878/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com