splice() 方法向/从数组中添加/删除项目,然后返回被删除的项目。
arrayObject.splice(index,howmany,item1,.....,itemX)
index : 必需。整数,规定添加/删除项目的位置,使用负数可从数组结尾处规定位置。
howmany :必需。要删除的项目数量。如果设置为 0,则不会删除项目。
item1, ..., itemX: 可选。向数组添加的新项目。
在本例中我们将删除位于 index 2 的元素,并添加一个新元素来替代被删除的元素:
<script type="text/javascript">var arr = new Array(6)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"arr[3] = "James"arr[4] = "Adrew"arr[5] = "Martin"document.write(arr + "<br />")arr.splice(2,0,"William")document.write(arr + "<br />")</script>
输出:
George,John,Thomas,James,Adrew,MartinGeorge,John,William,Thomas,James,Adrew,Martin
在本例中我们将删除从 index 2 ("Thomas") 开始的三个元素,并添加一个新元素 ("William") 来替代被删除的元素:
<script type="text/javascript">var arr = new Array(6)arr[0] = "George"arr[1] = "John"arr[2] = "Thomas"arr[3] = "James"arr[4] = "Adrew"arr[5] = "Martin"document.write(arr + "<br />")arr.splice(2,3,"William")document.write(arr)</script>
输出:
George,John,Thomas,James,Adrew,MartinGeorge,John,William,Martin
直接删除某个list中的元素
for (var i = 0; i < state.list.length; i++) { if (state.list[i].optionId === action.payload) { state.list.splice(i, 1); } }
该例是在一个list中找出要删除的元素,用.splice(i,1)删除即可。