Javascript 返回字符串而不是数字
我正在尝试编写一个函数(onlyOddNumbers),该函数接受一个数字数组并返回一个只包含奇数的新数组,它工作正常,但问题是我在新数组中获取字符串而不是数字,为什么会发生这种情况?Javascript 返回字符串而不是数字,javascript,arrays,for-loop,Javascript,Arrays,For Loop,我正在尝试编写一个函数(onlyOddNumbers),该函数接受一个数字数组并返回一个只包含奇数的新数组,它工作正常,但问题是我在新数组中获取字符串而不是数字,为什么会发生这种情况? 使用for代替in,然后将num转换为字符串 const filter=函数(数字){ 让oddNumbersOnly=[] for(让数字的个数){ 如果(编号%2!==0){ oddNumbersOnly.push(number.toString()) } } 仅返回ODDnumbers; }; 常数ar
使用for代替in,然后将num转换为字符串
const filter=函数(数字){
让oddNumbersOnly=[]
for(让数字的个数){
如果(编号%2!==0){
oddNumbersOnly.push(number.toString())
}
}
仅返回ODDnumbers;
};
常数arr=[1,2,3,4,5,6];
常数结果=滤波器(arr)
console.log(结果)
let num=[0,1,2,3,4,5,6];
让oddNumbersOnly=num.filter(numb=>numb%2!==0);
console.log(仅限ODDnumbers)
似乎,@AlaaKhalila想要得到数字:“……问题是我在新数组中得到的是字符串而不是数字”。问题解决了,我只是用了(for of)而不是(for in)可能只使用这个oddNumbersOnly。按(+number)
?
let oddNumbersOnly=[]
const filter = function (numbers) {
for (number in numbers){
if(number %2 !==0){
oddNumbersOnly.push(number)
}
} return oddNumbersOnly;
};