方法说明:
/**
* 删除数组元素,会对原数组起作用
* @param start 删除起点下标
* @param deleteCount 删除元素个数
* @return 返回删除的元素列表
*/
splice(start: number, deleteCount?: number): T[];
注意:切不可結合 indexOf() 直接使用。
错误示例:
arr.splice(arr.indexOf(arrItem), 1);
解析
这里原意是希望找到数组中的对应arrItem的下标,删除对应的arrItem。
但在使用indexOf寻找数组元素下标的时候,可能会出现找不到元素的情况,此时返回值为-1
当-1作为splice()方法的第一个参数时,会被当作数组的右起第一位。会出现问题。
网友评论