javascript - 如何向数组添加、删除指定的对象

查看:63
本文介绍了javascript - 如何向数组添加、删除指定的对象的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

var a = [];
var b = [{a:1},{b:2},{c:3}];

我绑定了一个点击事件,每一个点击事件点击后会传一个str到函数里。这个str是b数组中的对象,对象又和点击事件一一对应。然后我想当点击时,a数组插入str同时b数组删除str。简单的push、pop是不能满足这样的需求,有其他方法实现这样的逻辑吗?

解决方案

js数组操作中的splice方法,可以从某个位置开始替换(删除)指定数量元素,并且返回被替换(删除)的元素。
这个方法基本可以进行一切的数组操作,可能需要小心的一点就是其返回的也是一个数组。MDN
简单demo如下,情况是为每次只操作一个元素。

var a = [];
var b = [{a:1},{b:2},{c:3}];
var str = b[1];
var index = b.indexOf(str); // 注意,如果str为{b:2}的话则不生效,因为obj除非引用一致以外不相等。
a.push(b.splice(index, 1)[0]);

这篇关于javascript - 如何向数组添加、删除指定的对象的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆