【问题标题】:javascript ternary operator opposed to if/elsejavascript 三元运算符反对 if/else
【发布时间】:2016-01-10 22:50:58
【问题描述】:

我正在尝试使用 javascript 的三元运算符语法编写这个 if/else 语句。可以写成三元运算符吗?

function changePlayer() {
            if (currentPlayer === playerOne) {
                currentPlayer = playerTwo
            } else {
                currentPlayer = playerOne
            }
        };

我目前的尝试是:

function changePlayer(){
      currentPlayer === playerOne ? playerTwo : playerOne;
}

【问题讨论】:

  • currentPlayer=[playerOne, playerTwo][+(currentPlayer==playerOne)]

标签: javascript ternary-operator


【解决方案1】:

你只是错过了赋值语句。所以最后的例子是这样的:

function changePlayer(){
      currentPlayer = (currentPlayer === playerOne) ? playerTwo : playerOne;
}

【讨论】:

  • 不错!当我可以的时候会给你green tick
  • 我会说他错过了任务。
  • 我认为你的意思是任务。比较没有丢失。
  • @PaulFitzgerald 代码没有问题,只是解释需要调整。
【解决方案2】:

三元运算符的第一个参数是条件:

function changePlayer(){
  currentPlayer = (currentPlayer === playerOne) ? playerTwo : playerOne;
}

【讨论】:

    猜你喜欢
    • 2010-12-12
    • 2021-01-03
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 2015-06-05
    • 2022-12-06
    • 2017-03-25
    相关资源
    最近更新 更多