1. function getUA(OSArray) {
    2. var OSMap = {},
    3. UA = navigator.userAgent.toLowerCase(),
    4. EvalStr = '';
    5. //如果不传参或者传参不为数组或者为空数组,默认返回所有操作系统信息
    6. if (OSArray instanceof Array === false || OSArray.length < 1) {
    7. OSArray = UA.match(/(\S*)\/(\S*)/g);
    8. OSArray.forEach(function(v, i) {
    9. OSMap[OSArray[i].split('/')[0]] = OSArray[i].split('/')[1];
    10. })
    11. } else {
    12. OSArray.forEach(function(v, i) {
    13. if (UA.indexOf(v) > -1) {
    14. EvalStr = "UA.match((/(\\S*" + v + ")\\/(\\S*)/g) || [, '\'])[0]";
    15. OSMap[v] = eval(EvalStr).split('/')[1];
    16. } else {
    17. OSMap[v] = false;
    18. }
    19. })
    20. }
    21. return OSMap;
    22. }
    23. // var tr = ua.match(/(\S*mozilla)\/(\S*)/g)
    24. var UaMyInfo = getUA(['applewebkit', 'safari', 'micromessenger']);
    25. console.log(UaMyInfo);
    26. var UaAllInfo = getUA();
    27. console.log(UaAllInfo);