JS基本数据类型

数据类型简介和检测

JavaScript中两大数据类型

基本数据类型 : Number String Boolean Undefined Null
复杂数据类型 : Object Array Function RedExp Date Map Set Symbol等等

typeof运算符

使用typeof运算符可以检测值和或者变量的类型

typeof的返回值有Undefined、Null、Boolean、Number、String、Object

typeof的使用方法有两种:typeof 变量 和 typeof(变量)

5种基本数据类型的typeof检测结果

  1. 数字类型 number
  2. 字符串类型 string
  3. 布尔类型 boolean
  4. undefined类型 undefined
  5. null类型 onject

Number类型

所有数字不分大小 不分整数浮点数 不分 正数负数 都是数字类型

小数中的0可以省略

介于0和1之间的小数 可以不书写0
.5 === 0.5

科学计数法

较大数或者较小数 可以写成科学计数法
3e8 3e-4

不同进制的数字

二进制数值用0b开头
0b10 === 2
八进制数值以0开头
017 === 15
十六进制数字 以 0x 开头
oxf === 15

一个特殊的数字型值 NaN

NaN是 not a number 的意思 但他是一个数字类型的值
typeof NaN 是 number
0除以0的结果解释NaN 事实上 在数字运算中 若结果不能得到数字 其结果往往都是NaN
NaN有一个奇怪的性质:不自等
NaN !==NaN

String类型

字符串要用引号包裹 双引号或者单引号均可

字符串的拼接

加号可以用来拼接多个字符串
还有一个concat()

字符串和变量的拼接

要将一个变量的值插入到字符串中 要"斩断链接"
let c = ‘zbc’;
let str = ‘a’+c;
es6中可以使用反引号语法

非零/0 是Infinity

字符串的length属性

length是属性 表示字符串的长度

字符串的常用方法

charAt() : 表示指定位置字符

"123".charAt(0) //1

substring():提取子串

substring(a,b) 表示从a开始到b结束 (不包括b处)的子串
如果省略了第二个参数 返回的子串会一直到字符串的结尾
如果a>b 则会自动调整为小的在b在前
但是 参数不能为负数

substr():提取子串

substr(a,b)将得到从开始的长度为b的子串
如果省略了第二个参数 返回的子串会一直到字符串的结尾
a可以是负数 表示倒数的位置

slice(): 提取子串

slice(a,c) 的参数a可以使负数 但是a必须小于b 否则返回 ‘’
从a开始 到b结束 (不包括b)
如果省略了第二个参数 返回的子串会一直到字符串的结尾

toUpperCase():将字符串变为大写

toLowerCase():将字符串变为小写

indexOf(): 检索字符串

返回要检索的字符串在本字符串中的首次出现的位置 如果没有 返回-1

Boolean类型

只有两个: true 和false

Undefined类型

一个没有被赋值的变量的默认值是undefined 而 undefined 的类型也是 undefined
既是一个值 又是一种类型 这种类型只有他自己一个值

变量声明提升的情况

变量声明提升的时候变量的值也是undefined

null类型

null表示空 是空对象
当我们需要讲对象销毁 数组销毁 或者 删除事件监听的时候 通常将他们设置为null
类型和typeof结果并不总是一一对应 比如数组用typef检测结果也是object
typeof null //object

数据类型转换

其他值->数字

使用Number函数

字符串->数字
Number(’ ') = 0
纯数字字符串能够变位数字 不是纯数字的字符串转变为NaN

布尔值->数字

true变为1 false变为0

undefined和null->数字

undefined变为NaN
null变为0

使用parseInt()函数 (转变为整数)

将自动截掉第一个非数字字符之后的是所有字符
如果不是数字开头 则直接转为NaN
不四舍五入

使用parseFloat()函数 (转变为浮点数)

将自动截掉第一个非数字字符之后的是所有字符
如果不是数字开头 则直接转为NaN
不四舍五入

其他值->字符串

使用String()函数

变为长的相同的字符串
科学计数法和非十进制数字会转为10进制的值

使用toString()函数

其他值->布尔值

使用Boolean()函数
将空字符串、undefined、null、NaN、0转换成false,其他都为true

数字->布尔值

0 和NaN转为false 其他都转为true

字符串->布尔值

空转为false 其他转为true

undefined和null -> 布尔值
都是false

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值