浏览器的判断方法-代码提高

浏览器的判断方法

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>浏览器判断</title>
</head>
<body>
<div id="div"></div>
<script>
    //判断浏览器写法,第一种
    var ua = navigator.userAgent.toLowerCase();
    document.getElementById('div').innerHTML = ua;

    if(ua.indexOf('chrome') > -1){
        console.log("chrome browser");
    }else if(ua.indexOf('firefox') > -1){
        console.log("firefox browser");
    }else if(ua.indexOf('trident') > -1){
        console.log("ie browser");
    }
</script>
</body>
</html>

这种写法是比较常见的,首先获取浏览器的信息然后转成小写,通过字符串方法来找到有没有chrome的字段有就是chrome浏览器,没有就是其他的浏览器。这种写发很普通,我们来看第二种写法。

<!doctype html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>浏览器判断</title>
</head>
<body>
<div id="div"></div>


<script>
    //第二种写法
    var ua = navigator.userAgent;
    document.getElementById('div').innerHTML = ua;

    if(/chrome/i.test(ua)){
        console.log("chrome browser");
    }else if(/firefox/i.test(ua)){
        console.log("firefox browser");
    }else if(/trident/i.test(ua)){
        console.log("ie browser");
    }
</script>
</body>
</html>

第二种写法稍微高端一点,用的是正则,同样也是先获取浏览器信息,然后通过正则来判断有无chrome这个字段,这个方法比第一个写法优点有二。

1.不用转换大小写

2.通过正则减少判断的次数

这样少了一次方法的调用,也使用正则比较底层的写法,所以运行速度更快。

javascript验证手机号和实现星号(*)代替实例
http://www.jb51.net/article/90604.htm

数组获取随机数

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
</head>
<body>
    <script src="jquery.js"></script>
    <script>
        $(function(){
           
           var aMydata = [1,2,3,4,5,6,7,8,9,10];

           aMydata.sort(function(){
                return Math.random() - 0.5
           });


        });
    </script>
</body>
</html>

 优雅的数组降维——Javascript中apply方法的妙用
http://www.cnblogs.com/front-end-ralph/p/4871332.html

前端不为人知的一面--前端冷知识集锦

http://www.cnblogs.com/Wayou/p/things_you_dont_know_about_frontend.html#3361673

原文地址:https://www.cnblogs.com/masita/p/5445568.html