Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 删除数组中的每5个元素,但从第2个元素开始_Javascript_Arrays - Fatal编程技术网

Javascript 删除数组中的每5个元素,但从第2个元素开始

Javascript 删除数组中的每5个元素,但从第2个元素开始,javascript,arrays,Javascript,Arrays,我的数组是一个包含5个元素的3组序列 var tempArray1 = ['prodn', 'PP1', 'UK1', 'Exp', 'India2', 'prodn', 'PP2', 'france1', 'Imp', 'Czech2', 'prodn', 'PP3', 'Germ1', 'Exp', 'Rom2'] 我需要删除数组中的第2个元素,然后删除每5个元素。这将删除以“PP”开头的所有元素。请注意,我要删除的是数组中的位置,而不是字符类型。下面是我删除每5个元素的代码 var in

我的数组是一个包含5个元素的3组序列

var tempArray1 = ['prodn', 'PP1', 'UK1', 'Exp', 'India2', 'prodn', 'PP2', 'france1', 'Imp', 'Czech2', 'prodn', 'PP3', 'Germ1', 'Exp', 'Rom2']
我需要删除数组中的第2个元素,然后删除每5个元素。这将删除以“PP”开头的所有元素。请注意,我要删除的是数组中的位置,而不是字符类型。下面是我删除每5个元素的代码

var indexToRemove = 5;  // start position
var numberToRemove = 1; // elements to remove

tempArray1.splice(indexToRemove, numberToRemove);
但是我如何从第二个元素开始呢?谢谢。

var tempArray1=['prodn','PP1','UK1','Exp','India2','prodn','PP2','france1','Imp','Czech2','prodn','PP3','Germ1','Exp','Rom2']
对于(i=2-1;i
const tempArray1=['prodn','PP1','UK1','Exp','India2','prodn','PP2','france1','Imp','Czech2','prodn','PP3','Germ1','Exp','Rom2'];
const newArray=tempArray1.filter(函数(元素,i){
返回(i%5)!=1;
});

log(newArray)当您使用
splice
时,您会改变数组(就地),因此您需要执行4步而不是5步,因为您已经删除了一个值。在索引1处为
循环启动

const tempArray1=['prodn','PP1','UK1','Exp','India2','prodn','PP2','france1','Imp','Czech2','prodn','PP3','Germ1','Exp','Rom2'];
对于(设i=1;i

.as控制台包装器{max height:100%!important;top:0;}
使用测试用例将其制作成一个代码段。很好,您将步骤从5改为4,但是您还应该避免
i
是一个隐式声明的全局变量。谢谢。感谢您的帮助。您不需要将
i===1
作为单独的案例,您可以将1移动到等式的右侧:
返回i%5!==1;就可以了。你的代码只需要一行代码,不需要在答案中使用这些过时的解决方案
tempArray1=tempArray1.map((e,i)=>i==i*5+1?false:true)
我知道我一开始调用这个jquery而不是javascript(奇克利纠正了),但为什么要取消第二次否决。