diff --git a/src/math/Math.js b/src/math/Math.js index 02ed81cc59e0e13e485787887e146ea1c2f45d87..c005fa939798ba4a7c134ae7d38362e58c128eb5 100644 --- a/src/math/Math.js +++ b/src/math/Math.js @@ -11,35 +11,37 @@ var _Math = { generateUUID: function () { // http://www.broofa.com/Tools/Math.uuid.htm + // Replaced .join with string concatenation (@takahirox) var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split( '' ); - var uuid = new Array( 36 ); var rnd = 0, r; return function generateUUID() { + var uuid = ''; + for ( var i = 0; i < 36; i ++ ) { if ( i === 8 || i === 13 || i === 18 || i === 23 ) { - uuid[ i ] = '-'; + uuid += '-'; } else if ( i === 14 ) { - uuid[ i ] = '4'; + uuid += '4'; } else { if ( rnd <= 0x02 ) rnd = 0x2000000 + ( Math.random() * 0x1000000 ) | 0; r = rnd & 0xf; rnd = rnd >> 4; - uuid[ i ] = chars[ ( i === 19 ) ? ( r & 0x3 ) | 0x8 : r ]; + uuid += chars[ ( i === 19 ) ? ( r & 0x3 ) | 0x8 : r ]; } } - return uuid.join( '' ); + return uuid; };