不是给定数字的数字

Number that's not a given number

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

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]

您不需要 if/else 即可。您可以只定义要排除的数字,然后将其从数字数组中过滤掉。

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

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

您可以使用 Array#filter 和 return 不相等的值。

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

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

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

使用简单的 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));

你可以用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))