JSFiddle - React, Tailwind, and code Playground

HTML

<form>
  <input type="number">
</form>

JavaScript

$('input[type="number"]').keydown(function (event) { 
if ((!event.shiftKey && !event.ctrlKey && !event.altKey) && ((event.keyCode >= 48 && event.keyCode <= 57) || (event.keyCode >= 96 && event.keyCode <= 105))) { // 0-9 or numpad 0-9, disallow shift, ctrl, and alt  
  // check textbox value now and tab over if necessary 
} else if (event.keyCode != 8 && event.keyCode != 46 && event.keyCode != 37 && event.keyCode != 39 && event.keyCode != 9 && event.keyCode != 190) { // not esc, del, left or right 
  event.preventDefault(); 
} // else the key should be handled normally 
$(this).val( $(this).val().replace(/,[,\s]*,/g, ','));
}); 

$('input[type="number"]').keyup(function (event) { 
  $(this).val( $(this).val().replace(/([0-9]{3}(?=([0-9])))/g, "$1,")); //add currency comma
});