前言:
现在大家对“c语言删除数组指定元素”可能比较关怀,小伙伴们都想要了解一些“c语言删除数组指定元素”的相关资讯。那么小编也在网摘上汇集了一些对于“c语言删除数组指定元素””的相关内容,希望姐妹们能喜欢,你们快快来了解一下吧!Array.prototype.indexOf()
用indexOf找到你想删除的数组元素的索引,然后用splice删除该索引。
const array = [2, 5, 9];console.log(array);const index = array.indexOf(5);if (index > -1) { array.splice(index, 1);}// array = [2, 9]console.log(array);
splice的第二个参数是要移除的元素的数量。注意,splice修改了原地的数组,并返回一个包含被移除的元素的新数组。
为了完整起见,这里有一些函数。第一个函数只删除单一的出现(即从[2,5,9,1,5,8,5]中删除5的第一个匹配),而第二个函数则删除所有出现的情况。
function removeItemOnce(arr, value) { var index = arr.indexOf(value); if (index > -1) { arr.splice(index, 1); } return arr;}function removeItemAll(arr, value) { var i = 0; while (i < arr.length) { if (arr[i] === value) { arr.splice(i, 1); } else { ++i; } } return arr;}// Usageconsole.log(removeItemOnce([2,5,9,1,5,8,5], 5))console.log(removeItemAll([2,5,9,1,5,8,5], 5))
在TypeScript中,这些函数可以添加类型参数。
function removeItem<T>(arr: Array<T>, value: T): Array<T> { const index = arr.indexOf(value); if (index > -1) { arr.splice(index, 1); } return arr;}
Array.prototype.filter()
var value = 3var arr = [1, 2, 3, 4, 5, 3]arr = arr.filter(function(item) { return item !== value})console.log(arr)// [ 1, 2, 4, 5 ]
标签: #c语言删除数组指定元素