var calc = function() { var factorial = function(val) { if ($.isNumeric(val)) { val = parseInt(val); if (val < 0) { return "invalid value"; } else if (val === 1 || val === 0) { return 1; } else { return val * factorial(val - 1); } } return "value passed is not valid"; }; return { factorial: factorial }; }(); $("#btnFactorial").click(function() { $("#output").html('').append(calc.factorial($("#ip").val())); });
<input type="textbox" id="ip"/> <br/> <input type="button" id="btnFactorial" value="Factorial"/> <div id="output"></div>
input, div{margin:10px}