数据类型和typeof操作符
虽然学习js有一段时间了,但是对js的基础语法却是有些生疏。最近在看jquery源码,决定随带总结一些基础的语法知识。今天总结一下数据类型和typeof,这在写js的时候,是不得不知道的知识。
数据类型:
js有5种基本的数据类型:undefined,Null,Boolean,Number,string;和一种复杂的数据类型:object,js不支持所有自定义的数据类型,所以所有变量的值都是以上类型。
typeof:它的出现用来检测变量的数据类型,它可能的值有6种。
undefined---如果这个值未被定义(变量未声明||只声明未被初始化||声明初始化为undefined)
boolean,number,string,object,function.
undefined数据类型:这种数据类型只有一个值undefined。
//第一个例子
var m1;//只声明了,未被初始化
var m2=undefined;//声明初始化undefined
alert(m1);//undefined
alert(m2);//undefined
alert(typeof m1);//undefined
alert(typeof m2);//undefined
//第一个例子显示,变量声明之后,自动赋值undefined且数据类型为undefined //第二个例子
alert(n);//n未声明,产生错误
alert(typeof n);//undefined
//第二个例子显示,未被定义的变量值的数据类型为undefined
Null数据类型:这种数据类型也只有一个值null,null它表示一个空对象指针。在定义变量的时候,如果意在存储对象,则应该像这样var n=null;可以区分null和undefined。
var n=null;
alert(typeof n);//object
Boolean数据类型:这种数据类型只有两个值:true和false,区分大小写。虽然只有这两个值,但是所有类型的值都可以与这两个值进行转换(可以用Boolean()转型函数),这在if控制语句中非常有用。转换关系如下:
数据类型 | 转化为true | 转化为false |
Boolean | true | false |
undefined | 无 | undefined |
object | 任何对象 | null |
string | 任何非空字符 | 空字符 |
number | 任何非零数字 | null和NaN |
Number数据类型:
其中比较特别的是NaN(非数值,是一个比较特殊的数值),此数值表示一个本来要返回数值的操作数未返回的情况。并且它有两个比较奇怪的特点:1.任何关于NaN的操作都会返回NaN,2.NaN与任何值都不相等,包括它本身。正因为它的这些特性,ECMAscript定义了一个函数isNaN(),通过这个函数,我们就可以对任何数据类型的值进行判断,以此来确定这些值是否是数值。在判断的之前,isNaN()函数会先对能进行转换的值进行转换(Boolean数据类型的true,false可以分别转换为1,0;字符串的数值字符串可以转换为相应的数值),而判断过程中,是数值的会返回false,不是数值的会返回true。如下
alert(isNaN("MYname"));//true
alert(isNaN(""))//false,字符串会先转换为数值
alert(isNaN(true))//false,会转换为1
alert(isNaN(NaN))//true
string数据类型:
var str1 = "myname",
str2 = ""; typeof str1 //string
typeof str2 //string
object引用类型:
var vs1 = [],
vs2 = Object; typeof vs1;// object
typeof vs2;//function
在检测引用类型的时候,情况会有点复杂,将在以后的文章中说到
数据类型和typeof操作符的更多相关文章
- js基础回顾-数据类型和typeof怎么用
js的基本数据类型有六种,undefined.null.number.string.boolean.object. 未定义 空 数字 字符串 布尔 ...
- JavaScript中数据类型和typeof返回的数据类型
除了上图,要注意三点:1.symbol是ES6中新增的数据类型 2.typeof(null)结果是Object 3.typeof(Object)和typeof(Array)的结果是function,因 ...
- js的数据类型和typeof数据类型
js的数据类型:number,string,null,undefined,Boolean,object typeof数据类型:number,string,object,function,undefin ...
- Java数据类型和MySql数据类型对应一览
类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N ...
- Sql Server中的数据类型和Mysql中的数据类型的对应关系(转)
Sql Server中的数据类型和Mysql中的数据类型的对应关系(转):https://blog.csdn.net/lilong329329/article/details/78899477 一.S ...
- SQL数据类型和C#数据类型间的转换
今天看到SQL数据类型和C#数据类型间的转换,前人留下的. <?xml version="1.0" encoding="utf-8" ?> < ...
- MySql数据类型和Java数据类型对应一览
类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N ...
- Java数据类型和MySql数据类型对应一览 [转]
类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N ...
- mysql数据类型和java数据类型匹配
Java数据类型和MySql数据类型对应一览 类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java. ...
随机推荐
- Ansible@一个有效的配置管理工具--Ansible configure management--翻译(十)
未经书面许可,.请勿转载 Custom Modules Until now we have been working solely with the tools provided to us by A ...
- hdu 4975 最大流问题解决队伍和矩阵,利用矩阵dp优化
//刚開始乱搞. //网络流求解,假设最大流=全部元素的和则有解:利用残留网络推断是否唯一, //方法有两种,第一种是深搜看看是否存在正边权的环.见上一篇4888 //至少四个点构成的环,另外一种是用 ...
- 快速解读GC日志(转)
本文是 Plumbr 发行的 Java垃圾收集手册 的部分内容.文中将介绍GC日志的输出格式, 以及如何解读GC日志, 从中提取有用的信息.我们通过 -XX:+UseSerialGC 选项,指定JVM ...
- EF调用sp,EF自动生成返回类型
在sp中添加下面的红色部分,就是执行sp时的返回类型,后面在EF中添加该sp后,EF会在DBContext文件中,自动生成调用该sp的代码,包括返回类型等,如下: public virtual Obj ...
- Codeforces 479E Riding in a Lift(dp)
题目链接:Codeforces 479E Riding in a Lift 题目大意:有一栋高N层的楼,有个无聊的人在A层,他喜欢玩电梯,每次会做电梯到另外一层.可是这栋楼里有个秘 密实验室在B层,所 ...
- Sql Server之旅——第五站 确实不得不说的DBCC命令
原文:Sql Server之旅--第五站 确实不得不说的DBCC命令 今天研发中心办年会,晚上就是各自部门聚餐了,我个人喜欢喝干红,在干红中你可以体味到那种酸甜苦辣...人生何尝不是这样呢???正好 ...
- 带你轻松玩转Git--瞬间创建本地仓库
在上一篇文章中我们对版本控制有了一个比较宏观的了解,同时也能够看到Git 所处在的历史地位.并且对版本控制系统的体系进行了一个宏观的对比,貌似让读者看起来挺复杂的样子. 笔者将会尽可能的简单向大家分享 ...
- 都能看懂的嵌入式linux/android alsa_aplay alsa_amixer命令行使用方法
前几天在嵌入式linux上用到alsa command,网上查的资料多不给力,仅仅有动手一点点查,最终能够用了,将这个用法告诉大家,以免大家少走弯路. 0.先查看系统支持哪几个alsa cmd: ll ...
- linux_coom _ Linux文件比较,文本文件的交集、差集与求差
交集和差集操作在集合论相关的数学课上经常用到,不过,在Linux下 对文本进行类似的操作在某些情况下也很有用. comm命令 comm命令可以用于两个文件之间的 比较,它有一些选项可以用来调整输出,以 ...
- sgu 194 被动散热器具有最大流量的上限和下限(最大流量模板dinic加上优化)
模板类型的题详细參考国家集训队论文:http://wenku.baidu.com/view/0f3b691c59eef8c75fbfb35c.html 參考博客:http://blog.csdn.ne ...