个人工作tips:js之判断数据类型

无论是资深js玩家,还是初入门的玩家,数据类型的判断都是日常基操。
面试时,首页被问的是你知道有哪些类型吗?你巴拉巴拉一大堆,面试官也听了几个自己工作常用的,好的,你过了,然后问你怎么判断一个变量的数据类型,你说随口就来,typeof啊,然后突然想到array、null、object都是一样的,怎么办呢?你就说,如果是object类型就再用if else判断一下,平常工作的时候一般都是这样。这样做确实是工作中常见省事的方法,但if else的三次或以上的连续使用,不但看起来复杂,维护也不好维护。下面是我工作中的一个小tips:

在这里插入图片描述
数据类型常用常见的就是 undefinedfunctionobjectnumberbooleanstring,还有 symbolMathbigint等等。
Object.prototype.toString.call() 可以判断出所有的数据类型,我们判断数据类型的两种用法,一个是直接判断出结果拿来用,另一个就是判断这个数据类型是否是自己需要的。
第一个就直接拿结果就行了,针对第二个,我们可以定义:

let typeData = ['[object undefined]','[object function]', ...]
let isType = function(){}
typeData.indexOf(Object.prototype.toString.call(isType))

没错,就是定义一个集合,比if else更容易维护和阅读。

你可能感兴趣的:(javascript,前端,开发语言)