使用map获取数据数组中的最后一个

时间:2013-05-14 18:44:37

标签: jquery arrays map

以下迭代某些<th>元素并创建一个文本数组,每个数组条目都被<span>标记包围。

但是,我不需要最后一个<th>元素的内容 - 有没有办法轻易地从函数中省略它?

var newContent = $('#tableHead').find('th').map(function(){
    return '<span>' + $(this).text() + '</span>';
}).get();

3 个答案:

答案 0 :(得分:1)

使用.not(":last")从列表中删除最后th

var newContent = $('#tableHead').find('th').not(":last").map(function(){
    return '<span>' + $(this).text() + '</span>';
}).get();

答案 1 :(得分:1)

尝试使用.slice(0, -1)

var newContent = $('#tableHead').find('th').slice(0, -1).map(function(){
    return '<span>' + $(this).text() + '</span>';
}).get();

DEMO: http://jsfiddle.net/R6CPx/

答案 2 :(得分:0)

您可以使用“:not(:last-child)”选择器。请尝试以下方法:

var newContent = $('#tableHead').find('th:not(:last-child)').map(function(){
    return '<span>' + $(this).text() + '</span>';
}).get();