From 33e6fe42d16c216c54de9aacd13b25d420ef1324 Mon Sep 17 00:00:00 2001 From: Faisal Salman Date: Sat, 15 Sep 2012 02:27:54 +0700 Subject: [PATCH] Move string checker to outside as strMapper --- ua-parser.js | 33 ++++++++++++++++----------------- 1 file changed, 16 insertions(+), 17 deletions(-) diff --git a/ua-parser.js b/ua-parser.js index bc84ebf..5f88aa2 100644 --- a/ua-parser.js +++ b/ua-parser.js @@ -17,7 +17,7 @@ var regex = arguments[i], // even sequence (1,3,5,..) props = arguments[i + 1]; // odd sequence (2,4,6,..) - // build object barebones + // construct object barebones if (typeof result === 'undefined') { result = {}; for (k = 0; k < props.length; k++) { @@ -54,29 +54,28 @@ } return result; }; - - var maps = { - check : function (str, map) { - for (var i in map) { - if (map.hasOwnProperty(i)) { - if (typeof map[i] === 'object' && map[i].length > 0) { - for (var j = 0; j < map[i].length; j++) { - if (str.toLowerCase().indexOf(map[i][j]) !== -1) { - return i; - } + var strMapper = function (str, map) { + for (var i in map) { + if (map.hasOwnProperty(i)) { + if (typeof map[i] === 'object' && map[i].length > 0) { + for (var j = 0; j < map[i].length; j++) { + if (str.toLowerCase().indexOf(map[i][j]) !== -1) { + return i; } - } else if (str.toLowerCase().indexOf(map[i]) !== -1) { - return i; } + } else if (str.toLowerCase().indexOf(map[i]) !== -1) { + return i; } } - return str; - }, - + } + return str; + }; + + var maps = { os : { win : function (match, str1) { - return maps.check(str1, { + return strMapper(str1, { 'ME' : '4.90', 'NT 3.11' : 'nt3.51', 'NT 4.0' : 'nt4.0',