first for Juuso Alho
first for Juuso Alho
by fosco
HTML
<form id="foo-bar">
N: <input id="n" />
<div id="result"></div>
<input type="submit" value="Run"/>
</form>
JavaScript
$(document).ready(function() {
/**
* Recursion version of FooBar algorithm
*
* @param {number} [n=0] - how many iterations
* @param {number} [i=0] - iterator
* @param {[]} [out=[]] - output
*
* @returns {[]}
*/
var getFooBarArray = function(n, i, out)
{
var str = '';
i = i || 1;
out = out || [];
if (i > n) {
return out;
}
if (i % 2 == 0) {
str = 'foo';
}
if (i % 3 == 0) {
str += (str == '' ? '' : ' ') + 'bar';
}
if (str === '') {
str = i.toString();
}
out.push(str);
return getFooBarArray(n, i + 1, out);
};
$("#foo-bar").submit(function(e) {
e.preventDefault();
var n = $("#n").val(),
result = getFooBarArray(n);
$("#result").text(result.join(', '));
});
});