2019-01-20
JS 里的数据类型
JavaScript 是一种弱类型或者说动态语言。这意味着你不用提前声明变量的类型,在程序运行过程中,类型会被自动确定。这也意味着你可以使用同一个变量保存不同类型的数据
数据类型
js的数据类型有六种原始类型分别是Boolean Null Undefined Number String Symbol 以及 Object
Boolean 布尔类型 :
布尔表示一个逻辑实体,可以有两个值:true 和 false。
Null
Null 类型 :
Null 类型只有一个值: null,更多详情可查看 null 和 Null 。
null与undefined都可以表示“没有”,含义非常相似。将一个变量赋值为undefined或null,语法效果几乎没区别。
JavaScript 的设计者 Brendan Eich,觉得这样不够好。首先,第一版的 JavaScript 里面,null就像在 Java 里一样,被当成一个对象,Brendan Eich 觉得表示“无”的值最好不是对象。其次,那时的 JavaScript 不包括错误处理机制,Brendan Eich 觉得,如果null自动转为0,很不容易发现错误。
因此,他又设计了一个undefined。区别是这样的:null是一个表示“空”的对象,转为数值时为0;undefined是一个表示”此处无定义”的原始值,转为数值时为NaN。
null表示空值,即该处的值现在为空。调用函数时,某个参数未设置任何值,这时就可以传入null,表示该参数为空。比如,某个函数接受引擎抛出的错误作为参数,如果运行过程中未出错,那么这个参数就会传入null,表示未发生错误。
Undefined
Undefined 类型 :
一个没有被赋值的变量会有个默认值 undefined
Number 数字类型:
JavaScript 内部,所有数字都是以64位浮点数形式储存,即使整数也是如此。所以,1与1.0是相同的,是同一个数。
JavaScript 语言的底层根本没有整数,所有数字都是小数(64位浮点数)。
某些运算只有整数才能完成,此时 JavaScript 会自动把64位浮点数,转成32位整数,然后再进行运算
String 字符串类型:
JavaScript的字符串类型用于表示文本数据。它是一组16位的无符号整数值的“元素”。在字符串中的每个元素占据了字符串的位置。第一个元素的索引为0,下一个是索引1,依此类推。字符串的长度是它的元素的数量。
字符串一旦被创建,就不能被修改。但是,可以基于对原始字符串的操作来创建新的字符串。
Symbol 符号类型 :
符号(Symbols)是ECMAScript 第6版新定义的。符号类型是唯一的并且是不可修改的, 并且也可以用来作为Object的key的值. 在某些语言当中也有类似的原子类型(Atoms). 你也可以认为为它们是C里面的枚举类型.。
Object 对象
在计算机科学中, 对象是指内存中的可以被 标识符引用的一块区域.
对象和原始值不同,它们是可变的。