gpt4 book ai didi

javascript - return 语句中两个连续的减号是什么意思?

转载 作者:搜寻专家 更新时间:2023-10-30 22:03:47 29 4
gpt4 key购买 nike

在 typescript 中,我有以下内容:

self.newId = 0;

self.GetNewId = () => {
return --self.newId;
};

我的猜测是 return --self.newId; 做了两件事:

  1. 返回self.newId的当前值
  2. 然后它将 self.newId 的值减 1。(到 -1)

我假设下次调用 GetNewId 时,它将返回 -1 然后将值减小到 -2 等.

谁能证实

最佳答案

没有。您所描述的是后递减运算符,它是这样写的:

foo--

它确实会首先计算表达式,然后然后递减值。

这就是前置自减运算符,写法是这样的:

--foo

它会递减,然后求值。

所以,这个片段将做的是

  1. 它将 self.newId 的值减少 1。 (至-1)
  2. 然后返回self.newId的当前值

作为助记符,您可以考虑从左到右阅读表达式:运算符是先来还是后来?

关于javascript - return 语句中两个连续的减号是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21890348/

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