javascript - while loop not working correctly with the > token -


this not seem working not sure how while loop work correctly appreciated.

function getproductcode() { productcode = parseint(prompt("enter product code: ")); while (productcode < 1 || > 9999) { document.writeln("error! product code must between 1 - 9999"); parseint(prompt("enter product code: ")); } return productcode } getproductcode() 

you're missing operand (productcode) @ left side:

while (productcode < 1 || productcode > 9999) ^^^^^^^^^^^ 

and:

  • supply radix parseint. when unspecified, 010 becomes 8 (octal literal).
  • do not leak variables global scope, use var declare local variables.
  • invert logic, or use isnan. when invalid number supplied (nan), loop should not stop.
  • it's better move message document.writeln dialog.
  • assign new value productcode. otherwise, won't far...
  • important: dialogs can disabled in browsers. not loop infinitely many times, add treshold.

final code takes care of first 5 bullet points:

function getproductcode() { var productcode = parseint(prompt("enter product code: "), 10); while (!(productcode >= 1 && productcode <= 9999)) { productcode = parseint(prompt("error! product code must between 1 - 9999\nenter product code: "), 10); } return productcode; } 

i have not implemented treshold, it's that.


Comments

Popular posts from this blog

javascript - backbone.js Collection.add() doesn't `construct` (`initialize`) an object -

php - Get uncommon values from two or more arrays -

Adding duplicate array rows in Php -