递增语法:两个加号不是加号吗? (React.js)

时间:2018-11-16 09:23:37

标签: javascript reactjs increment

为什么此示例有效

 showNext = () => {
    const { current, total } = this.state;
    this.setState({
      current: current + 1 === total ? 0 : current + 1
    });
  };

而这个不是

 showNext = () => {
    const { current, total } = this.state;
    this.setState({
      current: current++ === total ? 0 : current++
    });
  };

而这个也不起作用

  showNext = () => {
    const { current, total } = this.state;
    this.setState({
      current: ++current === total ? 0 : ++current
    });
  };

1 个答案:

答案 0 :(得分:1)

因为var +1创建了一个新变量,该变量将被求值,而var保持不变。

后期和前置增量(++var var++)实际上会更改变量。因此,在这些示例中,您在评估变量和分配变量时都在增加变量。