$.getJSON('./file-read?filename='+filename+'¶meter='+parameter, function(data) {
var firstElement = data[0][0];
var lastElement = ?
});
我尝试找出JSON文件中的最后一个元素。
我的JSON文件如下所示:
[[1392418800000,6.9],[1392419400000,7],[1392420000000,7.1],[1392420600000,7.2],[1392421200000,7.2]]
任何人都可以帮我读取最后一个日期(1392421200000)吗?
答案 0 :(得分:3)
只需选择(length - 1)
th 元素:
var lastElement = data[data.length-1][0];
另一种方法是使用数组方法,例如pop
将返回数组的最后一个元素:
var lastElement = data.pop()[0];
N.B。:第一种方法是选择最后一个元素的最快方法,但第二种方法将隐式删除data
数组中的最后一个元素。因此,如果您计划稍后在代码中使用初始数组,请务必使用@matewka提供的第一种方法或替代解决方案。
答案 1 :(得分:3)
VisioN的答案很简单。这是另一种方法:
var lastElement = data.slice(-1)[0];
// output: [1392421200000,7.2]
slice
方法中的负数使得切片从数组末尾开始计数。我发现这种方法更紧凑,更简单,但缺点是它返回一个较小的1元素数组而不是你想要获取的元素。如果您只想获取时间戳,则必须在表达式的末尾添加另一个[0]
,如下所示:
var lastElement = data.slice(-1)[0][0];
// output: 1392421200000
答案 2 :(得分:1)
您可以使用:
var data = " any json data";
var lastelement = data[ Object.keys(obj).sort().pop() ];
Object.keys
(ES5,shimmable)返回对象键的数组。然后我们对它们进行排序并抓住最后一个。