删除一个元素
当我们想要删除数组中某个元素的时候,非常直观的思路是这样的:
- 获取该元素在数组中的索引;
- 然后使用数组的 splice 方法实现删除功能。
很容易我们会写出如下的函数:
let commonArrayDelete = function(deletedArr,deletedEle){
let index = deletedArr.indexOf(deletedEle)
console.log(deletedArr.splice(index,1))
console.log('',deletedArr)
}
下面我们构造四种不同的数组进行测试。
测试1:纯数字元素组成的数组:
let numArr = [1,2,3,4,5,6,7,8,9,10];
commonArrayDelete(numArr,3)
输出:
被删除元素 [3]
原始数组 (9) [1, 2, 4, 5, 6, 7, 8, 9, 10]
测试2:纯字符串元素组成的数组:
let strArr = ['a','b','c','d'];
commonArrayDelete(strArr,'c')
输出:
被删除元素 ["c"]
原始数组 (3) ["a", "b", "d"]
测试3:纯数组元素组成的数组:
let arrArr = [[1,2,3],[4,5,6],[7,8,9]]
commonArrayDelete(arrArr,[1,2,3])
输出:
被删除元素 [7, 8, 9]
原始数组 (2) [[1,2,3],[4,5,6]]
测试4:纯对象元素组成的数组:
let objArr = [
{
name:'小a',id:1},
{
name:'小b',id:2},
{
name:'小c',id:3},
{
name:'小d',id:3},
{
name:'小e',id:5},
{
name:'小f',id:7},
]
commonArrayDelete(ob