在我的JavaScript文件中,我有一個var
可用num
,其值爲3
。我想要做的是獲得任何不是3
,1
和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]
在我的JavaScript文件中,我有一個var
可用num
,其值爲3
。我想要做的是獲得任何不是3
,1
和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]
您可以使用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));
對於工作我! –
你不需要if/else這樣做。您可以定義哪個數字是您想要排除的數字,然後將其從數字數組中過濾出來。
var numberToExclude = 3;
var numbers = [1,2,3,4];
console.log(numbers.filter(number => number !== numberToExclude));
如需進一步信息,關於filter
方法請看看here。
使用一個簡單的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))
只是刪除從NUM人[1,2,3,4]使用切片 – binariedMe