js> load('testsrc/doctests/util.js'); js> Date.prototype.toJSON; function toJSON() { [native code for Date.toJSON, arity=1] } js> Date.prototype.toJSON.call({ > valueOf: function() { return Infinity; } > }, '') null js> expectError(function() { > Date.prototype.toJSON.call({}, '') > }, TypeError) js> expectError(function() { > Date.prototype.toJSON.call(5, '') > }, TypeError) js> expectError(function() { > Date.prototype.toJSON.call({toISOString:5}, '') > }, TypeError) js> expectError(function() { > Date.prototype.toJSON.call({toISOString:function(){ return [] }}, '') > }, TypeError) js> Date.prototype.toJSON.call({toISOString: function() { return 'w00t' }}, '') w00t js> var now = new Date() js> now.toJSON('') === now.toISOString() true