深入理解typeof操作符
typeof可以检测数据的类型
typeof返回结果的其实是字符串:可以通过以下测试出来
console.log( typeof(typeof(a))); // string
typeof返回的数据类型有6种:
1.number-----数字类型的操作数typeof(123);
NaN属于number类型。虽然是非数,但是非数也是数字的一种。
2.string--------字符串类型的操作数typeof('123');
3.boolean-----布尔值如:typeof(true);
4.object--------对象,数组,null,比如typeof(window),typeof(document),typeof(null);
其实null并不是一种对象,只是因为历史遗留性的问题,null通常用来作为对象占位符,所以被浏览器归到了object里面了。
5.function-----函数类型,比如typeof(eval),typeof(Date),typeof(Number),typeof(Object).
内置构造函数的分类
① ECMAScript核心语法自带内置构造函数: 有一部分内置构造函数:Function、 Object、 Array、 String、 Number、 Boolean、 RegExp、 Error、 Date
② 宿主环境: 也会支持一部分构造函数 例如Image。
6.undefined--未定义的变量,函数或者undefined
注意:typeof测试任何变量都不会报错,未定义的变量会返回字符串undefined
例题:
var a = typeof undefined == typeof NULL;
console.log(a); //true
// 因为javascript严格区分大小写,这里的NULL不等于null,这里的NULL为undefined
深入理解typeof操作符的更多相关文章
- JavaScript漫谈之理解类型操作符typeof
在本文中,将简述JavaScript类型系统和数据类型,以及如何使用typeof操作符执行类型检查. 还讲解了使用typeof操作符进行某些数据类型检查是不完善的,并介绍其他几种类型检查的方法. 更多 ...
- javaScript数据类型与typeof操作符
1,typeof操作符. typeof操作符是用来检测变量的数据类型.使用:typeof 变量名;返回以下字符串: 字符串 描述 undefined 未定义 boolean 布尔值 string 字 ...
- JavaScript类型检测, typeof操作符与constructor属性的异同
*#type.js function Person(name, age) { this.name = name; this.age = age; } var d = {an: 'object'}; v ...
- typeof操作符的返回值
使用typeof操作符 对一个值使用typeof操作符可能返回下列某个字符串: 1):undefined——如果这个值未定义 2):boolean——如果这个值是布尔值 3):string——如果这个 ...
- 数字操作 转为false的类型 typeof操作符 isNaN函数
console.group('数字操作'); // 浮点数值的内存空间是整数的两倍: // 会alert出来3e-7;从小数点后面6个0开始,就用科学计数法了: //alert(0.0000003); ...
- typeof操作符--undefined与null
<!DOCTYPE html><html><head> <meta charset="utf-8"> <title>ty ...
- JavaScript中的typeof操作符用法实例
在Web前端开发中,我们经常需要判断变量的数据类型.鉴于ECMAScript是松散类型的,因此需要有一种手段来检测给定变量的数据类型——typeof就是负责提供这方便信息的操作符. 对一个值使用t ...
- typeof操作符和instanceof操作符的区别 标签: JavaScript 2016-08-01 14:21 113人阅读 评论(
typeof主要用于检测变量是不是基本数据类型 typeof操作符是确定一个变量是字符串.数值.布尔类型,还是undefined的最佳工具.此外,使用typeof操作符检测函数时,会返回"f ...
- typeof操作符返回一个字符串,表示未经计算的操作数的类型。
typeof操作符返回一个字符串,表示未经计算的操作数的类型. 语法 typeof运算符后跟操作数: typeof operand or typeof (operand) 参数 operand 是 ...
随机推荐
- Codeforces - 814B - An express train to reveries - 构造
http://codeforces.com/problemset/problem/814/B 构造题烦死人,一开始我还记录一大堆信息来构造p数列,其实因为s数列只有两项相等,也正好缺了一项,那就把两种 ...
- 洛谷P2515 [HAOI2010]软件安装(tarjan缩点+树形dp)
传送门 我们可以把每一个$d$看做它的父亲,这样这个东西就构成了一个树形结构 问题是他有可能形成环,所以我们还需要一遍tarjan缩点 缩完点后从0向所有入度为零的点连边 然后再跑一下树形dp就行了 ...
- 统计Apache或nginx日志里访问次数最多的前十个IP
1.根据访问IP统计UV awk '{print $1}' access.log|sort | uniq -c |wc -l 2.统计访问URL统计PV awk '{print $7}' access ...
- UWP 页面跳转传值
如果涉及到页面跳转,一般用Frame这个控件来管理不同的页面. <Grid Name="RootGrid"> <Frame Name="RootFram ...
- 网络流24题 一句话题解(updating)
搭配飞行员问题 最简单的一道题 就是一个二分图匹配 太空飞行计划 最大权闭合子图 什么叫"最大权闭合子图"呢? 就是给定一个有向图,在里面选择一个点集,使得点集中的 ...
- 第05课 Linux命令初探(一)
该篇为第一部分,主要介绍的Linux指令有: mkdir.cd.ls.rm.touch.vi/vim.echo.cat.cp.mv.pwd.rm.rmdir 1.创建一个目录/data 提示:Wind ...
- 题解报告:hdu 6440 Dream(费马小定理+构造)
解题思路:给定素数p,定义p内封闭的加法和乘法运算(运算封闭的定义:若从某个非空数集中任选两个元素(同一元素可重复选出),选出的这两个元素通过某种(或几种)运算后的得数仍是该数集中的元素,那么,就说该 ...
- 关于web中的路径
做了许多Demo发现,浏览器解析的路径和服务器解析的路径是不同的.我们知道,路径加上/的时候,表示的是绝对路径的意思,而如果是服务器解析的话,这个/相对的是我们的web应用,即相对于http://19 ...
- POJ 1692 Crossed Matchings dp[][] 比较有意思的dp
http://poj.org/problem?id=1692 这题看完题后就觉得我肯定不会的了,但是题解却很好理解.- - ,做题阴影吗 所以我还是需要多思考. 题目是给定两个数组,要求找出最大匹配数 ...
- RHEL 6.5----Varnish缓存服务器
主机名 IP 服务 master 192.168.30.130 varnish slave 192.168.30.131 httpd WebServer 192.168.30.1 ...