You are a talented young chef who has just been offered the position of sous chef at the world's most prestigious Indian restaurant. You have little experience with preparing Indian cuisine, but you're determined, so you set out to prove yourself. You decide to become the leading dosa expert. To ...
mutating the [[Prototype]] of an object will cause your code to run very slowly; instead create the object with the correct initial [[Prototype]] value using Object.create
d3.v3.min.js:3:2131
Use of getPreventDefault() is deprecated. Use defaultPrevented instead.
jquery.min.js:3:6598
Literally: if n-1 > 0: add n, f(n-1) to stack. else: do nothing.
When program has terminated (all data is unmoving): if something in stack: multiply stack together and print result if nothing in stack: push 1 into stack.
also i liked the colours, it was a nice touch because you could scan for similar colours and then check if they matched rather than just brute force "check every character against every character in the other list"
one thing i would suggest is that pressing the wrong button should have no penalty (and not advance to the next set of lists) if the current pair of lists has been displayed for less than half a second or so
probably less than half a second actually
just enough so that you can be fairly certain the input was meant for the previous pair