js数据类型

2019-07-11  本文已影响0人  张二宝

在 JavaScript 规范中,共定义了七种数据类型,分为 “基本类型” 和 “引用类型” 两大类,如下所示:

基本类型:String、Number、Boolean、Symbol、Undefined、Null

引用类型:Object  


基本类型:

String

用于表示零或多个16位Unicode字符组成的字符系列,即字符串。可以由双引号“”或单引号‘’表示,不过以双引号开头的字符串也必须以双引号结尾,单引号也是如此。

在 JavaScript 中,字符串是基本数据类型,本身不存任何操作方法 。为了方便的对字符串进行操作,ECMAScript 提供了一个基本包装类型:String 对象 。它是一种特殊的引用类型,JS引擎每当读取一个字符串的时候,就会在内部创建一个对应的 String 对象,该对象提供了很多操作字符的方法,这就是为什么能对字符串调用方法的原因 。

常用操作方法

字符操作:charAt,charCodeAt,fromCharCode

字符串提取:substr,substring ,slice

位置索引:indexOf ,lastIndexOf

大小写转换:toLowerCase,toUpperCase

模式匹配:match,search,replace,split

其他操作:concat,trim,localeCompare


Number 类型

JavaScript 中的数字类型只有 Number 一种,Number 类型采用 IEEE754 标准中的 “双精度浮点数” 来表示一个数字,不区分整数和浮点数 。

能够表示的数值范围为 21024 到 2-1023 ,即

Number.MAX_VALUE; // 1.7976931348623157e+308

Number.MIN_VALUE; // 5e-324

如果数字超过最大值或最小值,JavaScript 将返回一个不正确的值,这称为 “正向溢出(overflow)” 或 “负向溢出(underflow)” 。

数值转换:

Number(value)                            // 可以用于任何数据类型,整体转换

parseInt(string [, radix])             // 仅能把字符串转换成数值,部分转换

parseFloat(string)                   // 仅能把字符串转换成数值,部分转换

NaN,非数字类型。涉及到的 任何关于NaN的操作,都会返回NaN


Boolean 类型

 true或false。在 JavaScript 中,所有类型的值都可以转化为与 Boolean 等价的值。

所有对象都被当作 true

空字符串被当作 false

null 和 undefined 被当作 false

数字 0 和 NaN 被当作 false 

=== 和 == :

===: 类型相同,并且值相等,才返回 true ,否则返回 false 。

== :值相等,就返回true,否则返回 false 。


Symbol 类型

Symbol是由ES6规范引入的一项新特性,它的功能类似于一种标识唯一性的ID。

和其他基本类型不同的是,Symbol 作为基本类型,没有对应的包装类型,也就是说 Symbol 本身不是对象,而是一个函数。因此,在生成 Symbol 类型值的时候,不能使用 new 操作符 。

Symbol 函数的参数只是表示对当前 Symbol 值的描述,因此,相同参数的 Symbol 函数的返回值也是不相等的。


Undefined 类型

Undefined只有一个值,即undefined值。

    使用var声明了变量,但未给变量初始化值,那么这个变量的值就是undefined

    访问对象上不存在的属性,或者数组中超出长度的下标


Null 类型

null类型是 Javascript 中特殊的原始数据类型,被看做空对象指针,只有一个值,即null值, 如果定义的变量准备在之后保存一个对象,那需要将该变量保存为null值。



引用类型:


Object类型

创建Object实例的方式有两种。

第一种是使用new操作符后跟Object构造函数

第二种方式是使用对象字面量表示法

ES6提供的合并对象的方法:Object.assign() 


Array类型

数组的每一项可以用来保存任何类型的数据,也就是说,可以用数组的第一个位置来保存字符串,第二个位置保存数值,第三个位置保存对象....另外,数组的大小是可以动态调整的。


Function类型

每个函数都是Function类型的实例,而且都与其他引用类型一样具有属性和方法。函数通常是使用函数声明语法定义的

上一篇下一篇

猜你喜欢

热点阅读