全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

JavaScript中如何判断一个值的类型

我们知道在js中有一个运算符可以帮助我们判断一个值的类型,它就是typeof运算符。

console.log(typeof 123);  //number
console.log(typeof '123'); //string
console.log(typeof true);  //boolean
console.log(typeof undefined); //undefined
console.log(typeof null); //object
console.log(typeof []);  //object
console.log(typeof {}); //object
console.log(typeof function() {}); //function

我们从以上结果可以看出typeof的不足之处,它对于数值、字符串、布尔值分别返回number、string、boolean,函数返回function,undefined返回undefined,除此以外,其他情况都返回object。

所以如果返回值为object,我们是无法得知值的类型到底是数组还是对象或者其他值。为了准确得到每个值的类型,我们必须使用js中另一个运算符instanceof。下面简单的说一下instanceof的用法。

instanceof运算符返回一个布尔值,表示指定对象是否为某个构造函数的实例。

instanceof运算符的左边是实例对象,右边是构造函数。它会检查右边构造函数的ptototype属性,是否在左边对象的原型链上。

var b = [];
b instanceof Array //true
b instanceof Object //true

注意,instanceof运算符只能用于对象,不适用原始类型的值。

所以我们可以结合typeof和instanceof运算符的特性,来对一个值的类型做出较为准确的判断。

//得到一个值的类型
function getValueType(value) {
  var type = '';
  if (typeof value != 'object') {
    type = typeof value;
  } else {
    if (value instanceof Array) {
      type = 'array';
    } else {
      if (value instanceof Object) {
        type = 'object';
      } else {
        type = 'null';
      }
    }
  }
  return type;
}
getValueType(123);  //number
getValueType('123'); //string
getValueType(true);  //boolean
getValueType(undefined); //undefined
getValueType(null); //null
getValueType([]);   //array
getValueType({});  //object
getValueType(function(){}); //function

总结

以上所述是小编给大家介绍的JavaScript中如何判断一个值的类型,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!


# js  # 判断值类型  # JavaScript中值类型和引用类型的区别  # JS正则表达式匹配检测各种数值类型(数字验证)  # JavaScript基本数据类型及值类型和引用类型  # javascript限制文本框输入值类型的方法  # JavaScript中的值类型转换介绍  # JavaScript中的值类型详细介绍  # js中的值类型和引用类型小结 文字说明与实例  # JavaScript中值类型与引用类型实例说明  # 运算符  # 小编  # 的说  # 在此  # 布尔值  # 中有  # 我们可以  # 给大家  # 可以看出  # 我们必须  # 它会  # 或者其他  # 可以帮助  # 所述  # 给我留言  # 值为  # 不适用  # 感谢大家  # 不足之处  # 如何判断 


相关文章: 如何用免费手机建站系统零基础打造专业网站?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  网站专业制作公司,网站编辑是做什么的?好做吗?工作前景如何?  如何基于云服务器快速搭建个人网站?  实惠建站价格推荐:2025年高性价比自助建站套餐解析  孙琪峥织梦建站教程如何优化数据库安全?  建站主机是什么?如何选择适合的建站主机?  盐城做公司网站,江苏电子版退休证办理流程?  如何快速使用云服务器搭建个人网站?  手机钓鱼网站怎么制作视频,怎样拦截钓鱼网站。怎么办?  潮流网站制作头像软件下载,适合母子的网名有哪些?  建站主机服务器选购指南:轻量应用与VPS配置解析  Dapper的Execute方法的返回值是什么意思 Dapper Execute返回值详解  如何在Golang中处理模块冲突_解决依赖版本不兼容问题  建站中国必看指南:CMS建站系统+手机网站搭建核心技巧解析  音乐网站服务器如何优化API响应速度?  建站之星ASP如何实现CMS高效搭建与安全管理?  浙江网站制作公司有哪些,浙江栢塑信息技术有限公司定制网站做的怎么样?  如何选择高效响应式自助建站源码系统?  简易网站制作视频教程,使用记事本编写一个简单的网页html文件?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  自助网站制作软件,个人如何自助建网站?  制作ppt免费网站有哪些,有哪些比较好的ppt模板下载网站?  建站DNS解析失败?如何正确配置域名服务器?  正规网站制作公司有哪些,目前国内哪家网页网站制作设计公司比较专业靠谱?口碑好?  南阳网站制作公司推荐,小学电子版试卷去哪里找资源好?  c# Task.ConfigureAwait(true) 在什么场景下是必须的  SAX解析器是什么,它与DOM在处理大型XML文件时有何不同?  合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?  娃派WAP自助建站:免费模板+移动优化,快速打造专业网站  制作网站的软件免费下载,免费制作app哪个平台好?  如何在局域网内绑定自建网站域名?  ,制作一个手机app网站要多少钱?  清单制作人网站有哪些,近日“兴风作浪的姑奶奶”引起很多人的关注这是什么事情?  建站之星安装路径如何正确选择及配置?  如何高效完成自助建站业务培训?  建站VPS能否同时实现高效与安全翻墙?  建站之星后台密码如何安全设置与找回?  如何在景安云服务器上绑定域名并配置虚拟主机?  网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?  非常酷的网站设计制作软件,酷培ai教育官方网站?  python的本地网站制作,如何创建本地站点?  如何在新浪SAE免费搭建个人博客?  如何用腾讯建站主机快速创建免费网站?  如何在万网自助建站平台快速创建网站?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  再谈Python中的字符串与字符编码(推荐)  建站之星如何快速解决建站难题?  如何续费美橙建站之星域名及服务?  如何批量查询域名的建站时间记录? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。