2020-09-20(js数据类型和判断方法)

js中数据类型分为原始数据类型和对象数据类型,原始数据类型分为数字(int)、字符串(string)和布尔类型(boolean)以及null(空)和undefined(未定义)。对象数据类型包括Object(对象)以及Array(数组)。

js也可分为可有方法类型和不可有方法类型。

js也可分为可变类型和不可变类型。

js中区别数据类型的有几种方式

一、typeof

用法:typeof(表达式或变量),只能区分基本数据类型,无法判断数组和对象(返回的都是Object)

二、instanceof

用法:a instanceof b ,将a和b做对比(可判断指定类型),例:

let a = [2,3,4];

console.log(a instanceof Array)//返回值为true

三、constructor

当一个函数F被定义时,JS引擎会为F添加prototype原型,然后在prototype上添加一个constructor属性,并让其指向F的引用,F利用原型对象的constructor属性引用了自身,当F作为构造函数创建对象时,原型上的constructor属性被遗传到了新创建的对象上,从原型链角度讲,构造函数F就是新对象的类型。这样做的意义是,让对象诞生以后,就具有可追溯的数据类型。

四、Object.propertoy.toString()方法

 toString()是Object的原型方法,调用该方法,默认返回当前对象的[[Class]]。这是一个内部属性,其格式为[object Xxx],其中Xxx就是对象的类型。

  对于Object对象,直接调用toString()就能返回[object Object],而对于其他对象,则需要通过call、apply来调用才能返回正确的类型信息。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容