【发布时间】:2015-08-19 21:16:54
【问题描述】:
我有一个像这样的 json 文件:
"files": {
"audio": {
"number1": {
"enabled": false,
"priority": 5,
},
"number1": {
"enabled": false,
"priority": 1,
},
"number3": {
"enabled": false,
"priority": 2,
}
}
}
var audioMap = {
'number1' : {‘name’:’Num1'},
'number1' : {'name’:'Num2'},
'number3' : {‘name’:'Num3'},
};
我将此 json 文件转换为具有某些功能的 xml 以及此功能:
function extractFile(data){
var datas = [];
var element = data.files.audio;
for (number in audioFiles) {
var audioName = audioMap[number].name;
datas.push({
name : audioName,
value : audioFiles[number]. enabled ? "true" : "false",
});
}
return datas;
}
输出是:
<file name="Num1" enabled="false"/>
<file name="Num2" enabled="false"/>
<file name="Num3" enabled="false”/>
如何根据 json 中的优先级编号对它们进行排序?
输出应该是这样的:
<file name="Num2" enabled="false"/>
<file name="Num3" enabled="false"/>
<file name="Num1" enabled="false”/>
我不知道在哪里添加排序并使用“优先级”进行排序
例如,如果我想使用此功能或任何排序功能:
function sortBy(key, reverse) {
var moveSmaller = reverse ? 1 : -1;
var moveLarger = reverse ? -1 : 1;
return function(a, b) {
if (a[key] < b[key]) {
return moveSmaller;
}
if (a[key] > b[key]) {
return moveLarger;
}
return 0;
};
}
【问题讨论】:
标签: arrays json xml sorting object