js数据类型及判断数据类型
众所周知,js有7种数据类型
1. null
2. undefined
3. boolean
4. number
5. string
6. 引用类型(object、array、function)
7. symbol
判断类型有以下4种判读方法
第一种方式: typeof
typeof null ---> "object"
typeof undefined ---> "undefined"
typeof true | false ---> 'boolean'
typeof 42 ---> 'number'
typeof "42" ---> 'string'
typeof { name : '1'} | [] ---> 'object'
typeof Symbol ---> 'symbol'
typeof ()=>{} ---> 'function'
typeif void 0 ---> 'undefined'
第二种方式 instanceof 但是这种方式只适合判断object类型
比如 : var arr = [] ; arr instanceof Array ---> true
null instanceof Object ---> false
[function] instanceof Object | Function --> true
第三种方式 Object.prototype.toString.call() 这种方式可以将全部的数据类型检测出来 也是 推荐的方式
因为toString是Object的原型方法, 而 Array Function 等都是Object的实例。都重写了toString 方法。返回的是类型的字符串
Object.prototype.toString.call(null) ---> [object Null]
Object.prototupe.toString.call(undefined) ---> [object Undefined]
Object.prototype.toString.call(123) ---> [object Number]
Object.prototype.toString.call(true) ---> [object Boolean]
Object.prototype.toString.call('123') ---> [object String]
Object.prototype.toString.call({}) ---> [object Object]
Object.prototype.toString.call([]) ---> [object Array]
Object.prototype.toString.call(Math) ---> [object Math]
Object.prototype.toString.call(function(){}) ---> [object Function]
Objdec.prototype.toString.call(new Date) ---> [object Date]
Object.prototype.toString.call(Symbol()) ---> [object Symbol]
第四种方式: constructor 判断对象的构造函。
1. null 是js 原型链的起点,没有构造函数
2. undefined 没有构造函数
3. [].constructor === Array ---> true
4. [string].constructor === String
5. [object].constructor === object
6. [number].constructor === Number
7. [symbol].constructor === Symbol
8. [function].constructor === Function
9. [new Date].constructor === Date
10. [RegExp].constructor === RegExp
来源 https://www.cnblogs.com/amiezhang/p/10325558.html
js数据类型及判断数据类型的更多相关文章
- js中的数据类型和判断数据类型
js中的数据类型和判断数据类型 基本数据类型,六大基本数据类型:字符串(String).数字(Number).布尔(Boolean).对象(Object).空(Null).未定义(Undefined) ...
- JS四种判断数据类型的方法:typeof、instanceof、constructor、Object.prototype.toString.call()
1.typeof 1 console.log(typeof ""); //string 2 console.log(typeof 1); //number 3 console.lo ...
- 浏览器解析js和type判断数据类型
### 浏览器解析: - 1.当浏览器(内核.引擎)解析和渲染js的时候,会给js提供一个运行的环境,这个环境叫做“全局作用域(后端global / 客服端window scope)” - 2.代码自 ...
- JS中的数据类型及判断数据类型的方法
简单类型(基本类型): number,string,boolean,null,undefined 复杂类型(引用类型):object typeof 只能判断基本数据类型 instanceof 能够判断 ...
- js中准确判断数据类型的方法
一 通用的typeof 方法 typeof ture 输出 Boolean typeof 123 输出 number ..... 但是 typeof 无法判断 nu ...
- js判断数据类型方法
//一般js中我们判断数据类型 都使用typeof 这里采用 Object.prototype.toString function type (val) { return Object.prototy ...
- js中判断数据类型的4中方法
注意: js中数据类型有7种(number, boolean, string, null, undefined, object, Symbol(es6新增)) 原始数据类型: number, stri ...
- js判断数据类型的四种方法
1.typeof typeof是一个操作符,其右侧跟一个一元表达式,并返回这个表达式的数据类型.返回的结果用该类型的字符串(全小写字母)形式表示,包括number,string,boolean,und ...
- JS的数据类型(包含:7种数据类型的介绍、数据类型的转换、数据类型的判断)
前言 最新的 ECMAScript 标准定义了JS的 7 种数据类型,其中包括: 6 种基本类型:Boolean.Null.Undefined.Number.String.Symbol (ECMASc ...
随机推荐
- 第07组 Alpha事后诸葛亮
1.请在博客开头给出组长博客链接(3.1 2分) 团队:摇光 队长:杨明哲 组长博客:这里 2.参考邹欣老师的问题模板进行总结思考(3.2 27分) 设想和目标(2分) 1.我们的软件要解决什么问题? ...
- NamedPipeStream的使用
NamedPipeStream的使用具体案例如下: using System; using System.Data; using System.Data.SQLite; using System.IO ...
- Sword 计算机内存对齐
内存对齐理论 a.数据的对齐(alignment) 指数据的地址和由硬件条件决定的内存块大小之间的关系.一个变量的地址是它大小的倍数的时候,这就叫做自然对齐(naturally aligned). 例 ...
- TeslaManage 运行日志
“TeslaManage.exe”(Win32): 已加载“F:\TeslaManageProject\TeslaManage\x64\Debug\TeslaManage.exe”.已加载符号.“Te ...
- Bladex-Boot使用Postman调用服务说明
一:GitBladex-Boot项目,并启动服务 二:打开Postman 三:使用Post,调用http://localhost/blade-auth/oauth/token/ 配置:Header中增 ...
- cmd 连接oracle
第一步: sqlplus/nolog 第二步: conn 数据库名/密码@ip:端口/database: conn bill:/orcl 如果是连接不上. 报错信息为 Oracle ORA-0103 ...
- net::ERR_ABORTED 404 (Not Found)
对于按需加载(on-demand-load)或加载外部资源(external resources)(如图片.文件等)来说,webpack的配置,output.publicPath是很重要的选项.如果指 ...
- [图片问答]lodop注册相关
相关博文:LODOP和C-LODOP注册与角色等简短问答[增强版]由于其他博文要么图片太花哨(PS做的所以太花哨),要么文字太啰嗦,所以做了简短问答的图片,更简洁直观方便.1.该购买哪种LODOP注册 ...
- JS字符串数字前面加加号会变成数字类型
JS中一个字符串中只有数字,如果该字符串前面加了个加号,这个数值就变成了number类型.如本文测试中,用lodop打印二维码,最后一个参数是一个字符串,在前面加了加号和不在前面加加号,通过控制台输出 ...
- 使用Fiddler工具发送post请求(带有json数据)以及get请求(Header方式传参)
Fiddler工具是一个http协议调试代理工具,它可以帮助程序员测试或调试程序,辅助web开发. Fiddler工具可以发送向服务端发送特定的HTTP请求以及接受服务器回应的请求和数据,是web调试 ...