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如何实现用户注册和登录?(Auth脚手架指南)  android nfc常用标签读取总结  ,南京靠谱的征婚网站?  php 三元运算符实例详细介绍  C++时间戳转换成日期时间的步骤和示例代码  东莞专业网站制作公司有哪些,东莞招聘网站哪个好?  Win11摄像头无法使用怎么办_Win11相机隐私权限开启教程【详解】  如何基于云服务器快速搭建网站及云盘系统?  如何快速重置建站主机并恢复默认配置?  Laravel策略(Policy)如何控制权限_Laravel Gates与Policies实现用户授权  Laravel怎么实现支付功能_Laravel集成支付宝微信支付  通义万相免费版怎么用_通义万相免费版使用方法详细指南【教程】  学生网站制作软件,一个12岁的学生写小说,应该去什么样的网站?  如何彻底删除建站之星生成的Banner?  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  百度浏览器ai对话怎么关 百度浏览器ai聊天窗口隐藏  长沙企业网站制作哪家好,长沙水业集团官方网站?  Laravel怎么发送邮件_Laravel Mail类SMTP配置教程  HTML5空格和nbsp有啥关系_nbsp的作用及使用场景【说明】  Laravel如何处理CORS跨域问题_Laravel项目CORS配置与解决方案  Laravel PHP版本要求一览_Laravel各版本环境要求对照  如何用花生壳三步快速搭建专属网站?  Python文本处理实践_日志清洗解析【指导】  如何在服务器上三步完成建站并提升流量?  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  安克发布新款氮化镓充电宝:体积缩小 30%,支持 200W 输出  如何获取免费开源的自助建站系统源码?  java ZXing生成二维码及条码实例分享  Java垃圾回收器的方法和原理总结  电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  百度浏览器网页无法复制文字怎么办 百度浏览器复制修复  Laravel如何自定义分页视图?(Pagination示例)  Laravel怎么集成Log日志记录_Laravel单文件与每日日志配置及自定义通道【详解】  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  Laravel事件监听器怎么写_Laravel Event和Listener使用教程  如何在Tomcat中配置并部署网站项目?  Windows10如何删除恢复分区_Win10 Diskpart命令强制删除分区  如何为不同团队 ID 动态生成多个独立按钮  如何在Windows服务器上快速搭建网站?  Laravel的路由模型绑定怎么用_Laravel Route Model Binding简化控制器逻辑  Gemini手机端怎么发图片_Gemini手机端发图方法【步骤】  JavaScript如何实现音频处理_Web Audio API如何工作?  Python进程池调度策略_任务分发说明【指导】  Android仿QQ列表左滑删除操作  详解jQuery中基本的动画方法  Laravel如何为API编写文档_Laravel API文档生成与维护方法  如何用y主机助手快速搭建网站?  如何快速搭建安全的FTP站点?  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?