tirsdag den 1. juni 2010

JavaScript self-replicating program (or Quine)

This program will output the code for itself:
using function.toString()

(function() {var f;function r() {
return "(function() {var f;" + f + ";f=rep.toString();return r();})();";
};f = r.toString();return r();})();

using unescape()

var a = "(function() { return 'var a = ' + unescape('%22') + a + unescape('%22') + ';' + a; })();";(function() { return 'var a = ' + unescape('%22') + a + unescape('%22') + ';' + a; })();