JavaScript slice()不会从数组中删除元素

时间:2017-05-30 10:08:43

标签: javascript arrays slice

while (j<secondSpecsArr.length) {
    console.log(j);
    if (regStr.test(secondSpecsArr[j])){
        console.log('slice operation' + j + ' ' + secondSpecsArr[j]);
        secondSpecsArr.slice(j,1); 
    } else { j++; }
}

我正在删除Array中的元素,包括字符串'strong'。 但它s not deleting at least anything! Like, console.log('切片操作'+ j +''+ secondSpecsArr [j]);`正在工作,但切片()不是,并且在此之后我得到旧数组。问题出在哪里?

1 个答案:

答案 0 :(得分:3)

这就是slice的用途。它不会从数组中删除,而是提取。 splice正在从数组中删除。

var a = [1,2,3];

a.slice(0,1) // [1]
//a = [1,2,3]

a.splice(0,1) // [1];
// a = [2,3]

splice

slice