jquery - 带有索引和值的 jQuery $.map
问题描述
目前,我像这样映射我的 JSON 文件:
var sortedData = $.map(response.data, function(data, index) {
return [data];
});
这工作正常。但是缺少关键(索引)。我怎样才能添加它?
JSON文件的内容:
{
"index": 5,
"timestamp": 1570438008,
"data": {
"12": [
"Title 2",
"Description 2"
],
"10": [
"Title 1",
"Description 1"
]
}
}
在 $.map 之后我想对其进行排序(数据属性)。我是这样做的:
sortedData.sort(function(a, b) {
return (b[3] < a[3]) ? -1 : 1;
});
预期输出:
"12": [
"Title 2",
"Description 2"
],
"10": [
"Title 1",
"Description 1"
]
..而不是这样:
"10": [
"Title 1",
"Description 1"
],
"12": [
"Title 2",
"Description 2"
]
解决方案
您正在返回[data]
哪个返回 key 的值data
,而不是您应该只返回data
哪个将返回所有键的值,包括索引。
var jsonContent = {
"index": 5,
"timestamp": 1570438008,
"data": {
"12": [
"Title 2",
"Description 2"
],
"10": [
"Title 1",
"Description 1"
]
}
};
var sortedTicketsDesc = $.map(jsonContent, function(data, index) {
return data;
});
console.log(sortedTicketsDesc);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
推荐阅读
- python - Python While true, Try/Except, 返回值
- python - 一个以相同顺序返回字母列表的函数,除了任何元音显示为 * 和任何 l 显示为 %
- stripe-payments - 需要有关条带集成的建议
- mqtt - 将 mqtt 与 apache nifi 集成
- php - 如何计算从数据库中检索到的逗号分隔值
- javascript - 如何比较 2 个特定于序列匹配的数组值
- reactjs - react-router-native 不起作用
- closedxml - 我们可以克隆 XLWorkbook 对象吗(使用 ClosedXml)
- html - 使用 HTML & CSS3 : 如何垂直扩展内表的边框,使其接触外表
- java - Android - Kotlin Serializable vs Java Serializable ,性能一样吗?