javascript基本数据类型及类型检测常用方法小结

发布时间 - 2026-01-10 21:48:52    点击率:

本文实例讲述了javascript中的基本数据类型以及类型检测的几种方法。分享给大家供大家参考,具体如下:

1.JS中有6种基本的数据类型,JS中的所有操作都是基于这五种基本类型得到的。

(1)Object

对象类型

(2)number

数字类型

(3)String

字符串类型

(4)null

(5)underfined

(6)boolean

布尔类型:true或者为false

I)JS中的数据类型转换(非严格模式下)

“12”==12 // true 在非严格模式下,字符串可以向数字转换
true==1 // true 布尔值在等号两边会尝试转换为0或者1
“1”==true //true
null==underfined //true
new Object()==new Object() //true
NaN==NaN //false

II)JS中的数据类型转换(非严格模式下)

上述中的等号均不成立

注:特别的如果为基本类型中的string或者number,在必要的情况下,可以将string或者number转化为对象object类型,转化不是持续的。

比如:

var x=”hello” ; alert(a.length) // 5

数据类型中的隐式转化补充:

“32”+32 //转化为string
"32"-32 //转化为number

JS中的类型检测方法

(1)通过typeof来进行类型检测

我们先来看几个例子:

typeof 100 —->number

typeof “hello” ——>string

typeof true —–> boolean

typeof Number ——>function

typeof new Object()——->object

typeof Object ——->function

typeof null ——–>object

typeof underfined ——–>underfined

总结:如果右边的是基本类型,则typeof会尝试得到最基本的类型,比如number,string等等,如果是函数名,那么则返回function,这里Object,Number,String,等等都可以看成函数名,如果右边是一个基本的对象,则返回object(返回的都是小写哦)。

注:我们发现typeof null,结果返回了object,这是一个很早之前的BUG,一直沿用至今

试用范围:如果通过typeof来判断类型,适用于判定基本类型,或者判断是否为函数(function)。

2.instanceof

同样举例来说明:

[1,2] instanceof Array ——> true

“1,2” instanceof Array ——->false

总结:instanceof 会沿着原型链查找,如果左边对象的原型链上,具有右边的对象,那么会返回true,并且注意只用于判断扩展的对象类型(非number,string等)

比如:

instanceof Number —–> false
"hell"  instanceof String  ------>string

补充:instanceof的右边必须是函数,或者是构造器,如果不是则会报错,检测的是左边的对象的原型链上,是否有右边函数的prototype。

3.Object.prototype.toString

通过对象原型上的toSting方法,同样也可以判断类型,我们来举例子:

Object.prototype.toString.apply([]) ——>[object Object]

Object.prototype.toString.apply(function(){}) —->[object Function]

Object.prototype.toString.apply(Number) ——->[object Function]

Object.prototype.toString.apply(String) ——–>[object Function]

Object.prototype.toString.apply(null) ———–>[object Null]

Object.prototype.toString.apply(undefined)–>[object Undefined]

使用类型:原生对象和基本类型

此外还有

(4)constructor

(5)duck type等

更多关于JavaScript相关内容可查看本站专题:《javascript面向对象入门教程》、《JavaScript中json操作技巧总结》、《JavaScript切换特效与技巧总结》、《JavaScript查找算法技巧总结》、《JavaScript错误与调试技巧总结》、《JavaScript数据结构与算法技巧总结》、《JavaScript遍历算法与技巧总结》及《JavaScript数学运算用法总结》

希望本文所述对大家JavaScript程序设计有所帮助。


# javascript  # 数据类型  # 类型检测  # JS中检测数据类型的几种方式及优缺点小结  # 浅谈javascript的数据类型检测  # 关于JS数据类型检测的多种方式总结  # js数据类型检测总结  # JavaScript中检测数据类型的四种方法  # 在javaScript中检测数据类型的几种方式小结  # JavaScript数据类型检测代码分享  # js学习总结_基于数据类型检测的四种方式(必看)  # JS数组索引检测中的数据类型问题详解  # js中各种数据类型检测和判定的实战示例  # 的是  # 都是  # 转化为  # 模式下  # 是一个  # 几个  # 相关内容  # 遍历  # 中有  # 适用于  # 这是一个  # 数据结构  # 给大家  # 或者是  # 布尔  # 如果不是  # 报错  # 更多关于  # 很早  # 转换为 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何快速搭建虚拟主机网站?新手必看指南  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  Laravel Facade的原理是什么_深入理解Laravel门面及其工作机制  如何在宝塔面板中修改默认建站目录?  如何用y主机助手快速搭建网站?  iOS UIView常见属性方法小结  宙斯浏览器文件分类查看教程 快速筛选视频文档与图片方法  Win11怎么关闭透明效果_Windows11辅助功能视觉效果设置  Laravel如何实现多对多模型关联?(Eloquent教程)  如何自定义safari浏览器工具栏?个性化设置safari浏览器界面教程【技巧】  如何实现建站之星域名转发设置?  如何快速搭建FTP站点实现文件共享?  html5audio标签播放结束怎么触发事件_onended回调方法【教程】  Laravel队列任务超时怎么办_Laravel Queue Timeout设置详解  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  儿童网站界面设计图片,中国少年儿童教育网站-怎么去注册?  Win11怎么修改DNS服务器 Win11设置DNS加速网络【指南】  大连 网站制作,大连天途有线官网?  Midjourney怎样加参数调细节_Midjourney参数调整技巧【指南】  Laravel如何使用Service Provider注册服务_Laravel服务提供者配置与加载  如何用景安虚拟主机手机版绑定域名建站?  Java遍历集合的三种方式  如何为不同团队 ID 动态生成多个“认领值班”按钮  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  使用C语言编写圣诞表白程序  如何在腾讯云免费申请建站?  Laravel如何使用Passport实现OAuth2?(完整配置步骤)  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  浅谈javascript alert和confirm的美化  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  Laravel如何自定义分页视图?(Pagination示例)  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  mc皮肤壁纸制作器,苹果平板怎么设置自己想要的壁纸我的世界?  如何在香港免费服务器上快速搭建网站?  如何快速搭建高效WAP手机网站吸引移动用户?  Laravel如何实现多级无限分类_Laravel递归模型关联与树状数据输出【方法】  香港服务器网站推广:SEO优化与外贸独立站搭建策略  ChatGPT 4.0官网入口地址 ChatGPT在线体验官网  香港服务器部署网站为何提示未备案?  高性价比服务器租赁——企业级配置与24小时运维服务  网站建设整体流程解析,建站其实很容易!  WordPress 子目录安装中正确处理脚本路径的完整指南  想要更高端的建设网站,这些原则一定要坚持!  如何快速上传建站程序避免常见错误?  php后缀怎么变mp4格式错误_修改扩展名提示格式不对怎么办【技巧】  如何快速搭建自助建站会员专属系统?  Laravel怎么判断请求类型_Laravel Request isMethod用法  详解Oracle修改字段类型方法总结  零基础网站服务器架设实战:轻量应用与域名解析配置指南