gpt4 book ai didi

javascript - 对这个 Javascript 简写感到困惑

转载 作者:行者123 更新时间:2023-11-28 20:36:17 26 4
gpt4 key购买 nike

我不明白这个简写是如何工作的:

nodes.forEach(function(o, i) {
o.y += i & 1 ? k : -k;
o.x += i & 2 ? k : -k;
});

我从未见过这样的增量运算符。

谢谢

最佳答案

表达式i & 1 ? k : -k 计算结果为 k-k,具体取决于 i & 1 计算结果是否为 true 或不。

& 运算符在运算符之间执行按位“与”操作,因此第一个条件检查是否设置了最低有效位,第二个条件检查是否设置了第二最低有效位。

代码的作用相同:

nodes.forEach(function(o, i) {
if (i & 1) {
o.y += k;
} else {
o.y -= k;
}
if (i & 2) {
o.x += k;
} else {
o.x -= k;
}
});

关于javascript - 对这个 Javascript 简写感到困惑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15299576/

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