function blobToString(blob) { var reader = new FileReader(); var d = \"\"; reader.onloadend = function() {
Check out http://blog.ericzhang.com/state-of-binary-in-the-browser/ and his binary.js project.
it should not be reader.onloadend but rather reader.onloaded
or try
reader.onload = function (e) { e.target.result -> this is the data. }