With David Banham
[ { "hostName": "one" }, { "hostName": "two" }, { "hostName": "three" }, { "hostName": "four" }, { "hostName": "five" }, ]
hashes = jobs.map(function(job) { return md5(job); }); [ "6ecf35e7a633be3aa565ba87a3c6b8e3" ]
nums = hashes.map(function(hash) { num = 0 for ( var i = 0 ; i < hash.length ; i++ ) { num += hash.charCodeAt(i) } return num }); [ 2386 ]
var sub360 = function(num) { if (num < 360) return num; num = num - 360; return sub360(num); }; angles = nums.map(sub360); [ 184 ]
[ { "job": "Threatening Oryx" }, { "job": "Super Yak" }, { "job": "Statuesque Koala" }, { "job": "Sudden Dolphin" }, { "job": "Stormy Cobra" }, ]
hashes = jobs.map(function(job) { return md5(job); }); [ "ab9d82b9ae7d7d7256a95efe3447ec78" ]
nums = hashes.map(function(hash) { num = 0 for ( var i = 0 ; i < hash.length ; i++ ) { num += hash.charCodeAt i } return num }); [ 2365 ]
var sub360 = function(num) { if (num < 360) return num; num = num - 360; return sub360(num); }; angles = nums.map(sub360); [ 205 ]
var adjustHash = function(targetNode, nodes, job) { var matchingNode = findMatchingNode(nodes, job) if (targetNode === matchingNode) return job job = job + 1 return adjustHash(targetNode, nodes, job) };