博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Javascript 常用类型检测
阅读量:5151 次
发布时间:2019-06-13

本文共 845 字,大约阅读时间需要 2 分钟。

  1.判断变量是否为数组的数据类型?

  方法一 :判断其是否具有“数组性质”,如slice()方法。可自己给该变量定义slice方法,故有时会失效。

  方法二 :obj instanceof Array ,但是在某些IE版本中不正确

  方法三 :来自于zepto.js源码 , 

function isArray(arg){     return Object.prototype.toString.call(arg) === "[object Array]"    }

         对于支持ECMA Script5中的新方法Array.isArray()的浏览器可以做如下优化。

if(typeof Array.isArray==="undefined"){  Array.isArray = function(arg){        return Object.prototype.toString.call(arg)==="[object Array]"    };  }

  2.判断变量是否为对象

function isObject(arg){     return Object.prototype.toString.call(arg) === "[object Object]"    }

  更加深层次的判断

function isPlainObject(obj) {	return isObject(obj)  && Object.getPrototypeOf(obj) == Object.prototype}

  3.判断变量是否为函数

function isFunction(arg){     return Object.prototype.toString.call(arg) === "[object Function]"    }

  

  

  

转载于:https://www.cnblogs.com/xjcjcsy/p/6160891.html

你可能感兴趣的文章
Python第一天
查看>>
css position
查看>>
【bzoj2788】Festival
查看>>
执行gem install dryrun错误
查看>>
Java SE之正则表达式一:概述
查看>>
广义表
查看>>
HTML5简单入门系列(四)
查看>>
AndroidStudio快捷键
查看>>
实现字符串反转
查看>>
转载:《TypeScript 中文入门教程》 5、命名空间和模块
查看>>
苹果开发中常用英语单词
查看>>
[USACO 1.4.3]等差数列
查看>>
Shader Overview
查看>>
Reveal 配置与使用
查看>>
Java中反射的学习与理解(一)
查看>>
nginx配置socket服务
查看>>
C语言初学 俩数相除问题
查看>>
博客园安家--写给自己
查看>>
B/S和C/S架构的区别
查看>>
[Java] Java record
查看>>