add base64 in toString

pull/12/head
caub 8 years ago
parent 8b9a23ce32
commit 461adc8ac6

@ -12,9 +12,9 @@
"uglifyjs": "~2.4.10"
},
"scripts": {
"test": "mocha tests/node-test.js -r jscoverage",
"test": "mocha tests/node-test.js",
"report": "mocha tests/node-test.js -r jscoverage --covout=html",
"coveralls": "mocha tests/node-test.js -R mocha-lcov-reporter -r jscoverage | coveralls",
"coveralls": "mocha tests/node-test.js -R mocha-lcov-reporter | coveralls",
"doc": "rm -rf doc;jsdoc src README.md -d doc",
"compress": "uglifyjs src/md5.js --compress --mangle --comments --output build/md5.min.js",
"build": "npm run-script compress;npm run-script doc"

@ -15,6 +15,10 @@
if (NODE_JS) {
root = global;
}
var btoa = NODE_JS ? function(strOrBuffer){
return Buffer.from(strOrBuffer, 'binary').toString('base64');
} : window && window.btoa;
var COMMON_JS = !root.JS_MD5_NO_COMMON_JS && typeof module === 'object' && module.exports;
var AMD = typeof define === 'function' && define.amd;
var ARRAY_BUFFER = !root.JS_MD5_NO_ARRAY_BUFFER && typeof ArrayBuffer !== 'undefined';
@ -496,7 +500,11 @@
* @example
* hash.toString();
*/
Md5.prototype.toString = Md5.prototype.hex;
Md5.prototype.toString = function(enc) {
if (enc == 'hex') return this.hex();
if (enc == 'base64') return btoa(this.digest().reduce((data, byte) => data + String.fromCharCode(byte), ''));
return this.hex(); // by default (for not modifying all tests), I'd prefer .digest() by default
}
/**
* @method digest

Loading…
Cancel
Save