gpt4 book ai didi

javascript - 如何在一条语句中将相同的值添加到两个变量?

转载 作者:行者123 更新时间:2023-12-03 16:32:14 25 4
gpt4 key购买 nike

可以将多个变量初始化为相同的值 a=b=5。此外,可以使用 a+=2 添加到变量。但是有什么办法可以同时为两者添加相同的值吗?像这样的 a+=b+=2 没有 a 增加 2b 的值。所以在这种情况下,ab 最终都是 7。

此外,我不是在寻找重复附加值的答案,例如 a+=2,b+=2

我意识到这不是最好的编码实践,我只是想知道它是否可能。在性质上与 Swapping two variable value without using 3rd variable 有点相似

最佳答案

可以做到!方法如下:

var a = 10;
var b = 15;
b += -a + (a += 10); // In this case, adding 10 to both
console.log(a, b); //=> 20 25

BOOM(是的,它也让我大吃一惊)

有时候为什么不重要,重要的是您可以做到!


那么,它是如何/为什么起作用的?

-a 被解析并成为 a 的负值,即 10(所以 -10)。然后,a += 10 运行并将 a 设置为 20 (10 + 10)。最后,它将两个值相加 (-10 + 20) 并为您提供旧 a 和新 a 之间的差异。

华丽。


编辑:为了完整起见,截至 ES6 的 destructuring assignments ,你可以这样做:

let a = 10;
let b = 15;
[ a, b ] = [ a+10, b+10 ]
console.log(a, b); //=> 20 25

这也是一个语句,而且更简洁、更易于理解。

关于javascript - 如何在一条语句中将相同的值添加到两个变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42452496/

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