打赏

javascript判断是否为数组 面试题

1、方法

instanceof:多框架下有问题(看示例代码)

Object.prototype.toString.call():兼容性很好

Array.isArray: IE9+以上

constructor

2、示例

 

<!DOCTYPE html>
<html lang="zh">

    <head>
        <meta charset="UTF-8" />
        <meta name="viewport" content="width=device-width, initial-scale=1.0" />
        <meta http-equiv="X-UA-Compatible" content="ie=edge" />
        <title>javascript 判断是否为数组的方法</title>
    </head>

    <body>
        <iframe src="" width="" height=""></iframe>
        <script>
            var iframe_arr = window.frames[0].Array;
            var a = [];
            //方法一
            console.log(a instanceof Array); //true
            console.log(iframe_arr instanceof Array) //false
            //方法二
            console.log(Object.prototype.toString.call(a) === '[object Array]'); //true
            //方法三
            console.log(Array.isArray(a)); //true
            //方法四
            var arr = [];
            console.log(arr.constructor.name === 
Array.name 
);
        </script>
    </body>

</html>

 

 

 

 

posted @ 2018-03-23 12:15  孟繁贵  阅读(664)  评论(0编辑  收藏  举报
TOP