0

I am trying to make a button change a string from 'Mode One:' to 'Mode Two:', and when pressed again, changed back to 'Mode One:' and so on and so forth. However when I run this, it will change the first time to 'Mode Two:' but when I press it again, it will not go back to Mode One.

Here is my code:

Flip
<script>

    let currentMode = 'Mode one:'

    flip = () => {
        if(currentMode = 'Mode one:'){
            currentMode = 'Mode Two:'
            console.log(currentMode)
        }else if(currentMode = 'Mode Two:'){
            currentMode = 'Mode one:'
            console.log(currentMode)
        }
    }

</script>
2

2 Answers 2

1

Since you are using a single "=", that is not comparing values, it is assigning a value. You want to use "==" or "===":

if(currentMode == 'Mode one:'){
   currentMode = 'Mode Two:'
   console.log(currentMode)
}else if(currentMode == 'Mode Two:'){
   currentMode = 'Mode one:'
   console.log(currentMode)
}
Sign up to request clarification or add additional context in comments.

Comments

1

In your if statement, your are assigning a value to a variable. The value of this operation is always true. To compare two values you need the == operator:

<script>

    let currentMode = 'Mode one:'

    flip = () => {
        if(currentMode == 'Mode one:'){
            currentMode = 'Mode Two:'
            console.log(currentMode)
        }else if(currentMode == 'Mode Two:'){
            currentMode = 'Mode one:'
            console.log(currentMode)
        }
    }

</script>

1 Comment

Oh, I got the wrong row :-)

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.