假设我有一个由30个数字组成的输入,我想要第1个,第5个,第10个,第15个等等 - 所有这些都在一个输出中。我该怎么做?
答案 0 :(得分:1)
假设您的输入可以表示为数组,这个最简单的解决方案是使用Array.filter
方法:
var filterNotMultFive = function(val, idx, arr) { return !(val % 5); };
inputArray.filter(filterNotMultFive);
警告:根据您的问题,我假设您的意思是测试值,而不是 indices 。如果您想要索引,请使用
var filterIdxNotMultFive = function (val, idx, arr) { return !(idx % 5); };
我还假设您的意思是从第0个开始,而不是第一个。
编辑:基于上面注释中的空格分隔的输入,假设您希望输出由空格分隔,只需使用array.join方法以单个空格重新加入输出。然后将结果分配给变量。
var outputDelimitedBySpaces = inputDelimitedBySpaces.split(/\s+/).filter(filterNotMultFive).join(" ");