我如何使用className在单个调用中弹出()2个数组的最后一个元素
How can I pop() the last element of 2 arrays in single call using className?
我有两个div元素,它们被分配了一个名为"stack"的数组,使用data()
。
两个div元素都有一个.trigger
类。
我现在要pop()
两个数组的最后一个元素,像这样:
$('.trigger').data("stack").pop()
尽管
,但是这只去掉FIRST数组的最后一个元素$('trigger').length
返回2
。
是否有一种方法可以在一行中从两个数组中删除最后一个元素?
你可以这样做:
$('.trigger').each(function() { $(this).data('stack').pop(); });
一般来说,jQuery函数返回一个值(比如"。data()"或"。css()",当只传递一个字符串参数时)只操作匹配数组中的第一个元素。因此,当您想要执行类似交易的操作时,您可以使用显式的"。each()"来自己获取每个元素。
您可以使用'map' -
var arr = $('.trigger').map(function() {
return $(this).data("stack").pop()
})
Demo - http://jsfiddle.net/5gvAH/
正如Pointy指出的那样,如果您需要从每个数组中弹出的值,则此解决方案可以很好地工作。如果你只是想弹出值,而不需要返回值,那么Pointy的建议将是最合适的。
相关文章:
- 如何使用 node.js 比较两个 json 数组
- 用每小时的差值填充数组/列表-从下拉列表中给定两个时间值
- MongoDB (php) - 以数组而不是多个属性的形式返回文档属性
- 在数组中的一个元素上设置多个值
- 访问$.ajax()函数中的两个不同数组
- 在对象数组中查找多个值的d3范围
- 正在更新mongod中两个对象内部的数组
- 如何循环通过2个对象数组并通过匹配id进行合并
- 如何使用javascript合并两个对象数组
- 使用filter和map方法将数组中某些元素的第一个字母大写-JavaScript
- 第一个字第一个字符第二个字第二个字符,一直到数组结束
- 在数组JS中查找三个重复项
- 我正在尝试使用多个2数组来绑定svg圆的数据,但不知道如何绑定
- JS:从整个数组中每次得到5个项目,并得到平均值
- 带有多个答案选项的Javascript动态数组窗口
- 使用数据数组创建多个类似组件
- 如何从数组中删除几个相同的项
- 根据多个值筛选数组
- 创建具有2个唯一数字的Javascript数组
- 在 JQuery 验证中验证多个“数组命名”文件输入和下拉列表