分享人:钟华俊
目录
1.背景介绍
2.知识剖析
3.常见问题
4.解决方案
5.编码实战
6.扩展思考
7.参考文献
8.更多讨论
JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释 器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一 个应用)网页上使用,用来给HTML网页增加动态功能。
"数据类型"在数据结构中的定义"一个值的集合以及定义在这个值集上的一组操作"。在编程语言中,能够表 示并操作的值的类型称做数据类型。
JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。 该类型的表示方法有两种形式,第一种是整数,第二种为浮点数。整数:可以通过十进制,八进制,十六进制的字面值 来表示。浮点数:就是该数值中必须包含一个小数点,且小数点后必须有一位数字。还有一种特殊的数值,即NaN (非数值 Not a Number)。
用于表示由零或多个16位的Unicode字符组成的字符序列,即字符串。至于用单引号,还是双引号,在js中还是没有差别 的,记得成对出现。字符串默认只能写在一行内,分成多行将会报错。
布尔值代表“真”和“假”两个状态。“真”用关键字true表示,“假”用关键字false表示。布尔值只 有这两个值。我们这需要注意下,Boolean类型的字面值true和false是区分大小写的。也就是说,True和False(以及其它的 混合大小形式)都不是Boolean值,只是标识符。
Object数据类型,称为对象,是一组数据和功能(函数)的集合。可以用new操作符后跟要创建的对象类型 的名称来创建。也可以用字面量表示法创建。在其中添加不同名(包含空字符串在内的任意字符串)的属性。对象是带有 属性和方法的特殊数据类型,是一组“键值对”(key-value)的集合,是一种无序的复合数据集合。
undefined表示“未定义”,如果使用的对象属性不存在或者是未声明变量,undefined 值将被返回。 一个未初始化的变量的值就为undefined。
null表示空值,即该处的值现在为空。调用函数时,某个参数未设置任何值,这时就可以传入null,表示 该参数为空。null值表示了一个空对象指针,但是null不等于undefined。 null用来表示空值,即没有对象被呈现,我们可以通过将变量的值设置为 null 来清空变量:
null与undefined的区别?如何判断
怎么样判断值的数据类型?
null与undefined都可以表示“没有”,含义非常相似。 它们区别是这样的:null是一个表示“空”的对象,转为数值的时候为0;undefined是一个表示"此处无定义"的原始值, 转为数值时为NaN。详见demo中返回undefined的典型例子
使用typeof运算符来进行检测
如果判断的是基本类型,则typeof会尝试得到最基本的类型,比如number,string等等,如果是函数名,那么则返回 function,这里Object,Number,String,等等都可以看成函数名,如果判断的是一个基本的对象,则返回object 注:我们发现typeof null,结果返回了object,这是一个很早之前的BUG,一直沿用至今。 试用范围:如果通过typeof 来判断类型,适用于判定基本类型,或者判断是否为函数。
JavaScript 变量可以转换为新变量或其他数据类型:
可以通过使用 JavaScript 函数
也可以通过 JavaScript 自身自动转换
Number() 函数把对象的值转换为数字。
String() 函数把对象的值转换为字符串
一元运算符 + 可用于将变量转换为数字
当 我们尝试操作一个 "错误" 的数据类型时,JS会自动帮我们转换为 "正确" 的数据类型。 即使输出来结果不是我们所期望的:
3 + null // 返回 3 null 转换为了数字 0
"3" + null // 返回"3null" null 转换为 "null"
"3" + 1 // 返回 "31" 数字 1 转换为了字符串 "1"
"3" - 1 // 返回 2 这里字符串"3" 转换为了数字 3
参考资料:https://www.jianshu.com/p/248737f3d6f3
—— javascript数据类型
参考资料:http://javascript.ruanyifeng.com/#introduction
—— 阮一峰:Javascript标准参考
参考资料:https://blog.csdn.net/suyu_yuan/article/details/56282357
—— js如何判断变量的数据类型?
ES6新增的第七种基本类型有什么作用呢?
typeof的局限性?
鸣谢
感谢大家观看
BY : 钟华俊