数字不是给定的数字

时间:2017-06-03 07:28:39

标签: javascript pseudocode

在我的JavaScript文件中,我有一个var iable num,其值为3。我想做的是在31之间获取不是4的任何数字。为了让您了解它:

if number equal 3
  return [1,2,4]
elif number equal 1
  return [2,3,4]
elif number equal 2
  return [1,3,4]
elif number equal 4
  return [1,2,3]

4 个答案:

答案 0 :(得分:3)

您可以使用Array#filter并返回不相等的值。



function getArrayWithout(array, v) {
    return array.filter(function (a) { return a !== v; });
}

var array = [1, 2, 3, 4];

console.log(getArrayWithout(array, 3));




答案 1 :(得分:2)

你不需要if / else这样做。您可以定义哪个是要排除的数字,然后从数字数组中过滤掉它。



var numberToExclude = 3;
var numbers = [1,2,3,4];
console.log(numbers.filter(number => number !== numberToExclude));




有关filter方法的更多信息,请查看here

答案 2 :(得分:0)

使用简单的for循环遍历范围并通过检查数字生成数组。

function genArray(num, start = 1, end = 4) {
  // initialize the result array
  var res = [];
  // iterate based on the range
  for (var i = start; i <= end; i++)
    // push into the array if number is not `num`
    i != num && res.push(i)
  // return the result
  return res;
}

console.log(genArray(3));
console.log(genArray(2));
console.log(genArray(3, 1, 10));
console.log(genArray(3, 2, 10));

答案 3 :(得分:0)

您可以使用Array#splice方法

function except(num){
var arr=[1,2,3,4]
if(arr.indexOf(num) > -1)
arr.splice(arr.indexOf(num),1);
return arr
}

console.log(except(3))
console.log(except(1))
console.log(except(2))