我带了json_encode数据。输出如下所示
[{"ab":"item1"},{"ab":"item2"},{"ab":"item3"},{"tg":"int1"},{"int":"int2"}]
我将数据提取为
$.post('add.php',
{ },
function(data){
var tot = data.length-2;
for(i = 1; i<tot; i++){
console.log( data[i].ab ) //ab data fetched here
}
}
);
我的问题是,如何获取最终的2个数据(在上面的示例中称为int1
和int2
)?
NOte:数据长度不同
答案 0 :(得分:1)
试试这个:
var lastTwo = data.slice(data.length - 2);
的 Fiddle 强>
如果您不知道这些对象的键:
for (var i = 0; i < lastTwo.length; i++)
{
var a = Object.keys(lastTwo[i]);
var value = lastTwo[i][a[0]];
}
的 Fiddle 强>
答案 1 :(得分:1)
您可以使用pop
两次,以获取最后两项。
var data = [{"ab":"item1"},{"ab":"item2"},{"ab":"item3"},{"tg":"int1"},{"int":"int2"}];
var last = data.pop(),
secondLast = data.pop();
// As keys of the object are not fixed, use Object.keys
var lastItem = last[Object.keys(last)[0]];
var secondLastItem = secondLast[Object.keys(secondLast)[0]];