![](/img/trans.png)
[英]P5.Js - how can I change line() color in a while-loop on specific x-values?
[英]How can I make a JavaScript while-loop for storing values that are divisible by two values?
我正在尝试在 JS 中创建一个 while 循环,它将所有值添加到一个逗号分隔的字符串中,范围为 28 到 63,其中该值可以被 5 或 7 整除。
我的问题在于找到一种方法来检查值分割与两个5或7。
但是我这辈子都做不到了,任何建议都会被采纳。
这是我走了多远。
var text = "";
i = 28;
while (i < 63) {
i++
if (i % 5 || i % 7 === 0) {
if (i === 28) text = i;
else {
text = text + "," + i
}
}
}
console.log(text);
这就是我得到的结果
",29,31,32,33,34,35,36,37,38,39,41,42,43,44,46,47,48,49,51,52,53,54,56,57,58,59,61,62,63" (string)
你的第一个if
条件有一个小错误。 它应该是:
if (i % 5 === 0 || i % 7 === 0)
如果您希望该值可以被5
和7
整除,您需要将条件更改为: if (i % 5 === 0 && i % 7 === 0)
如果该值应该可以被5
或7
then if (i % 5 === 0 || i % 7 === 0)
这将满足
var text = "";
i = 28;
while (i < 63) {
i++
if (i % 5 ===0 || i % 7 === 0) {
if (i === 28) text = i;
else {
text = text.length ? `${text},${i}`:`${text}${i}`;
}
}
}
console.log(text);
所需的输出将是"30,35,40,42,45,49,50,55,56,60,63"
function myFunction() {
var text = "";
var iNum = 28;
while (iNum < 68) {
if ((iNum % 5 === 0) || (iNum % 7 === 0)) {
text = iNum;
} else {
text = text + "," + iNum
}
iNum++
}
console.log(text);
}
希望这可以回答你的问题。
我会提出的第一个建议是始终创建一个完整的条件。 我的意思是你有i % 5 || i % 7 === 0
i % 5 || i % 7 === 0
应该是i % 5 === 0 || i % 7 === 0
i % 5 === 0 || i % 7 === 0
。 看到我在你的第一个条件中添加了=== 0
。 一旦你添加一个||
或&&
两个条件是分开的。
这个例子可以回答你的问题:
i = 28;
while (i < 63) {
i++
if (i % 5 === 0 || i % 7 === 0 || i % 5 === 0 && i % 7 === 0) {
if (i === 28) text = i;
else {
text = text + "," + i
}
}
}
console.log(text);
我又加了一个||
使用 AND/&& 条件。 该条件检查数字是否可以被 5 和 7 整除。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.