不爱学习的刘同学

导航

JS数据类型及运算符

 

一.数据类型

js的数据类型分为原始型数据类型和引用型类型
原始类型分为数值型、字符串型、布尔型、未定义型、空

1、数值型
常见数字

浮点型
1.23
2.34
3.1415e1 => 31.415 e1 小数点右移一位
3.1415e-1 => 0.31415 相反

typyof方法检测数据类型

2、字符串类型
所有被引号包含的值都是字符串,不区分单双引号
查看一个字符的编码
'L'.charCodeAt()

3.布尔型
true和false 真和假

4.未定义型
只有一个值undefined,表示一个控制,例如:声明了变量未赋值则为undefined

5.空
只有一个值null,类型是object,常和对象一起使用

 

二.数据类型转换

分为隐式转换和强制转换

1、隐式转换
(1.数值+字符串
  自动将数值类型转换字符类型,进行拼接
  2 + '3' => '23'

(2.数值+布尔型 布尔型转换为数值
2 + true => 3
2 + false => 2

(3.字符串+布尔型 布尔型转为字符串
'3' + true => '3true'

NaN:not a number,不是一个数字,只要出现这个值就是在将一个值转换为数值的时候,没有成功的得到数字返回的结果。NaN和任何数值执行数学运算结果还是NaN
所有的隐式转换为数值都会调用Number()函数

2.强制转换
(1.强制转换为数值
Number()
Number('1') => 1
Number('1a') => NaN
Number(true) => 1
Number(false) => 0
Number(undefined) => NaN
Number(null) => 0
(2、强制转换整型
parseInt()
parseInt(1.2) => 1
parseInt('1.22') => 1
parseInt('2a2') => 2
parseInt('a2') => NaN
(3.强制转换成浮点型
parseFloat()
parseFloat('2a4') => 2
parseFloat('3.14c') => 3.14
parseFloat('a2.2') => NaN
(4.强制转换成字符串
toString()
只能用于将数值和布尔型转为字符串
var n = 2
var str = n.toString() => '2'

 

三.运算符

1.算术运算符
+ - * / %取余 ++自增 --自减

var a1 = 5
var a2 = a1++ => 先赋值给a2再进行自增

console.log(a2) => 6

console.log() => 打印输出函数

var a3 = 2

var a4 = --a3 => 1 先执行a3自减,再赋值给a4

2.比较运算符
> < = >= <= == != === !==

== 等于,只比较值,可能会出现隐式转换
=== 全等于,比较值还会比较类型
!= 不等于,比较值
!=== 不全等于,比较值是否不同或者类型

数字和字符串比较,字符串会转换为数值
字符串之间比较,比较的是首个字符的编码

3.逻辑运算符
&& 逻辑与
|| 逻辑或
!   逻辑非
 

 4.赋值运算符
    = += -= *= /= %=
    先执行运算,再执行赋值

 

posted on 2022-09-24 02:14  不爱学习的刘同学  阅读(59)  评论(0编辑  收藏  举报