为什么这个方法在javascript中不能给出0.25的正确倍数?



我试图得到0.25的倍数,但我得到了错误的输出。我做错了什么?

let arr1 = []
for (let i = 0.25; i <= 4.25; i++) {
//console.log(change)
if (i > 3) {
continue;
}
i % 0.25 == 0 ? arr1.push(i) : 'cancl'
console.log(arr1) // i get [0.25, 1.25, 2.25] instead of [0.25, 0.5, 0.75, ...]
}

我怎样才能得到写的答案/倍数?

你的代码不工作,因为i++增加i1。用0.25代替i:

const arr1 = []
for (let i = .250; i <= 4.25; i += 0.25) {
arr1.push(i)
}
console.log(arr1)

代码中的一个简单缺陷是它被加1。

条件应为i = i+ .25

检查

下面的代码

let arr1 = []
for (let i = 0.25; i <= 4.25; i=i+.25) {
//console.log(change)
if (i > 3) {
continue;
}
i % 0.25 == 0 ? arr1.push(i) : 'cancl'
// i get [0.25, 1.25, 2.25] instead of [0.25, 0.5, 0.75, ...]
}
console.log(arr1)

因为使用i++,迭代后将得到i+ 1

相关内容

  • 没有找到相关文章

最新更新