lib/phonetic.js
function getNumericHash(data) {
	var hash = crypto.createHash('md5'),
		numeric = 0,
		buf;
	hash.update(data + '-Phonetic');
	buf = hash.digest();
	for (var i = 0; i <= 12; i += 4)
		numeric += buf.readUInt32LE(i);
	return numeric;
}
function getNumericHash(data) {
	var hash = crypto.createHash('md5'),
		numeric = 0,
		buf;
	hash.update(data + '-Phonetic');
	buf = hash.digest();
	for (var i = 0; i <= 12; i += 4)
		numeric += buf.readUInt32LE(i);
	return numeric;
}
function getNumericHash ( data ) { var hash = crypto . createHash ( 'md5' ) , numeric = 0 , buf ; hash . update ( data + '-Phonetic' ) ; buf = hash . digest ( ) ; for ( var i = 0 ; i <= 12 ; i += 4 ) numeric += buf . readUInt32LE ( i ) ; return numeric ; }
Generates a numeric hash based on the input data.  The hash is an md5, with
each block of 32 bits converted to an integer and added together.

@param {string|number} data The string or number to be hashed.
@returns {number}
Generates a numeric hash based on the input data . The hash is an md5 with each block of 32 bits converted to an integer and added together .