Page 1 of 1

Button to increment or decrement at random

Posted: 04 Dec 2020, 05:38
by Marius
Quick question:
How can I set a button that can increment and/or decrement at random a number as it is clicked?
This is the code i have.

Code: Select all

<button id='tst_btn'>Change counter</button>
<h3 id='tst_count'>0</h3>

<script>
var counter = 0,
  tst_count = document.getElementById('tst_count'),
  tst_btn = document.getElementById('tst_btn');

tst_btn.addEventListener('click', ()=>{
  //..code to increment or decrement at random ??

  tst_count.innerText = counter;
});
</script>

Button to increment or decrement at random

Posted: 04 Dec 2020, 08:24
by MarPlo
You can use Math.random() to decide whether you are going to increment or not:

Code: Select all

<button id='tst_btn'>Change counter</button>
<h3 id='tst_count'>0</h3>

<script>
var counter = 0,
  tst_count = document.getElementById('tst_count'),
  tst_btn = document.getElementById('tst_btn');

tst_btn.addEventListener('click', ()=>{
  var shouldIncrement = Math.random() > 0.5; // 50% chances of incrementing
  counter += shouldIncrement ? 1 : -1;
  tst_count.innerText = counter;
});
</script>
Demo:

0