我不想带回或删除数组中的第一条记录并将其附加到我的页面。我从下面的JSON文件中获取数据:
$(data.content).each(function(index, content){
$("#htmlID").append('<span>' + content.myinfo + ');
});
{
"content":
[
{"myinfo":"Bill Clinton 095 years old. "},
{"myinfo":"Bill Clinton 195 years old. "},
{"myinfo":"Bill Clinton 295 years old. "},
{"myinfo":"Bill Clinton 295 years old. "}
]
}
当我将我的数据追加到页面时,一切都很完美,但我想跳过第一个元素(索引)...我基本上不想带回比尔克林顿095岁的特定输出。< / p>
我该怎么做? (grep?,删除,删除?)。
最简单的方法是什么?
答案 0 :(得分:7)
您可能不想修改数组或JSON,所以只需测试执行循环时您所在的元素:
$(data.content).each(function(index, content){
if (index>0) { // skips first element
$("#htmlID").append('<span>' + content.myinfo + '</span>');
}
});
或者更好的是,只需使用一个老式的for
循环并节省一些开销:
for (var i=1; i<data.content.length; i++) {
$("#htmlID").append('<span>' + data.content[i].myinfo + '</span>');
}
答案 1 :(得分:2)
使用.shift();
方法执行此操作,它将移动第一个元素
答案 2 :(得分:2)
如果你只是想跳过第一项,那就可以了:
$(data.content).each(function(index, content){
if (index > 0) {
$("#htmlID").append('<span>' + content.myinfo + '</span>');
}
});
答案 3 :(得分:0)
从索引为1的旧式for循环怎么样:
var target = $("#htmlID");
for (var i = 1, len = data.content.length; i < len; i++) {
target.append('<span>' + data.content[i].myinfo + '</span>');
}