zoukankan      html  css  js  c++  java
  • 怎样判断数组类型

    整理了四种判断数组类型方法:

      方法一: instance of方法

    //声明变量
    var arr = new Array();
    var newArr = [];
    var str = "";
    var nul = null;
    var und = undefined;
    var obj = new Object();
    var newObj = {}; 
    //声明函数
    function isArray(obj){
        return obj instanceof Array ? true : false;
     }
    //调用函数,并获取结果
    var result = isArray(arr);
    //打印结果
     console.log("result:",result);        //true
    

      方法二:构造函数(constructor)方法

    //声明函数
    function isArray(obj) {
       var result = obj.constructor == Array ? true : false;
        return result;
    }
    //测试结果
    console.log(isArray([]));  
    console.log(isArray({})); 
    console.log(isArray(new Array())); 
    console.log(isArray(new Object())); 
    console.log(isArray("string")); 
    console.log(isArray(123)); 
    console.log(isArray(true)); 
    

      方法三:call方法

      解释:

        call():函数实例的call方法,可以指定函数内部this的指向(即函数执行时所在的作用域),然后在所指定的作用域中,调用该函数。
      
    function isArray(obj) {
        return Object.prototype.toString.call(obj);
    }
    var arr=[2,5,6,8];
    var obj={name:'zhangsan',age:25};
    var fn = function () {}
    console.log(isArray(arr));      //[object Array]
    console.log(isArray(obj));      //[object Object]
    console.log(isArray(fn));       //[object function]
    

      方法四:isArray方法

    // ES5定义了Array.isArray:
    var arr = isArray([]);      //true
    // var arr = isArray({});      //false
    console.log("arr:", arr);
    function isArray(obj) {
        var result = Array.isArray(obj) ? true : false;
         return result;
    }
    

      

  • 相关阅读:
    【原】Shell脚本-判断文件有无进而复制
    【原】个人对win7开机黑屏只有鼠标排障总结
    【原】window上安装elasticserach
    【原】CentOS7上安装Xwiki8.2.1
    Java集合中Map接口的使用方法
    Java集合中Set的常见问题及用法
    Java计时器Timer和TimerTask用法
    Java集合中List的用法
    Java RuntimeException异常处理汇总
    用Java计算某个日期100天后的日期
  • 原文地址:https://www.cnblogs.com/mycnblogs-guoguo/p/11245326.html
Copyright © 2011-2022 走看看