排序Json和从当前位置获取上下数据
Sort Json and Get Up down data from Current Postion
我想对json
对象进行排序,然后从当前位置获得等级上下。
我有以下json
对象。
[
{
"Grade": "1+"
},
{
"Grade": "1"
},
{
"Grade": "1-"
},
{
"Grade": "10"
},
{
"Grade": "11"
},
{
"Grade": "12"
},
{
"Grade": "2+"
},
{
"Grade": "2"
},
{
"Grade": "2-"
},
{
"Grade": "3+"
},
{
"Grade": "3"
},
{
"Grade": "3-"
}
]
示例01: 假设我当前的位置是
1+
- 如果我点击
down word
按钮,然后1 minus
,得到结果1
- 如果我再次点击
down word
按钮,然后点击1 minus
并获得结果1-
- 如果我再次点击
down word
按钮,然后点击1 minus
并获得结果2+
- 如果我点击
up word
按钮,然后1 minus
,得到结果1-
我试着
var arr = [];
for(var jj in RatingGrade)
arr.push([jj, RatingGrade [jj]]);
console.log(RatingGrade);
var start = "1+";
var counter = 0;//work on up down button by increase and decrease
if( counter < 0 ){
$('#gen_override_gradename').text(arr[i - (counter)].GradeNo);
$('#pd_GradeName').text(arr[i - (counter)].GradeName);
$('#gen_avg_pd').text(arr[i - (counter)].AveragePD);
} else {
if(counter == 0){
$('#gen_override_gradename').text($('#rating_grade').text());
$('#pd_GradeName').text($('#base_pd_score').text());
} else {
$('#gen_override_gradename').text(arr[i - (1 + (counter))].GradeNo);
$('#pd_GradeName').text(arr[i - (1 + (counter))].GradeName);
$('#gen_avg_pd').text(arr[i - (1 + (counter))].AveragePD);
}
}
下面的代码片段将对json进行排序:
json.sort(function (a, b) {
return = a.id - b.id;
});
然而,+
和-
符号需要用额外的逻辑处理,因为你通过包括符号来消除"整数值"。现在它是一个字符串,当你试图将它与1进行比较时,1+不保留任何值。基本上,解析出符号并在排序完成后将它们扔回。
相关文章:
- 通过传递的参数位置获取jQuery中图像的宽度
- 如何使用位置获取滚动功能获取 HTML 中的元素标签
- 如何在鼠标位置获取所有元素
- 在插入符号位置获取DOM元素
- 是否可以在javascript中基于地理位置获取街道详细信息
- 根据用户光标的位置获取 iframe ID
- Angular js cordova地理位置获取当前位置并在后台将数据发送到服务器
- 使用光标位置获取元素内的文本
- 在 AngularJS 中按路径位置获取控制器
- 如何使用 IP 地址 + 地理位置获取用户位置 Asp.Net.
- 导航器地理位置获取当前位置不起作用
- 使用javascript按位置获取元素的id
- 在数组位置获取并设置cookie值
- 在指定位置获取元素JavaScript,并将其映射回源HTML
- 从请求脚本的位置获取主机
- 我们如何使用类名通过它在 Jquery 中的位置获取第二个元素
- API,用于从智能手机上的GPS位置获取附近商店的名称
- Jquery谷歌地图位置-获取选择选项
- Javascript,使用地理位置获取城市名称
- 从slector处理多个id的位置获取实际id