gpt4 book ai didi

javascript - 通过javascript中的if语句向数组添加值

转载 作者:太空宇宙 更新时间:2023-11-04 13:58:32 25 4
gpt4 key购买 nike

我使用 onkeyup() 从表单输入中获取值和 ID。如果值介于 0 和 4 之间,我想将它添加到数组中。然而,我的函数似乎将值添加到数组,无论它们是否介于 0 和 4 之间,尽管我希望它仅在值介于 0 和 4 之间时才向数组添加值。我做错了什么?

这些是输入:

<input type="number" class="form-control" id=0 onkeyup="a(this)" mix="0" max="4">
<input type="number" class="form-control" id=1 onkeyup="a(this)" mix="0" max="4">
.
.

这是我的功能:

function a(c){

var dps = [];
var id = c.id;
var valueStr = c.value;
var value = parseInt(valueStr)
if (0 <= value <= 4) {
dps[id]=value;
console.log("id: ",id);
console.log("value: ", value);
console.log("length of array: ",dps.length);
console.log("type of value: ", typeof value);
}
}

我已经在 J​​sfiddle 上重新创建了它: https://jsfiddle.net/89az7u4n/

最佳答案

您通常在数学中编写不等式的方式与我们通常在大多数编程语言中编写比较的方式不同。

if (0 <= value <= 4)并不意味着“如果该值介于 0 和 4 之间”。解析器将其视为 (0 <= value) <= 4这将评估为 false <= 4true <= 4两者都评估为 true .

更改您的 if声明:

if (0 <= value && value <= 4) {
...
}

在哪里&&logical AND运营商。

关于javascript - 通过javascript中的if语句向数组添加值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54714658/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com