JavaScript学习笔记---数据类型
## 数据类型 六种
基本数据类型:
1.number 数字型
2.string 字符串
3.boolean 布尔型
4.undefined 只声明未赋值
5.null 空
引用数据类型/复杂数据类型:
6.object 对象【array function object】
检测数据类型方法:typeof
格式:
1. typeof 变量名
2. typeof(变量名)
## 1.number 数字型
整数、小数、负数都是数字类型。
进制 二进制 八进制 十进制【默认】 十六进制
结果:
NaN: not a number 不是一个数字
场景: 1.自定义 2.计算出错
Infinity: 无穷大
场景: 计算出错
注意: 小数(浮点数)不能作为判断依据
## 2.string 字符串
被包裹在引号内【单双引都可以】,就是字符串类型
字符串方法:
1.length 长度
格式: 变量名.length
2.charAt(数字下标) 下标从0开始 根据下标 返回对应内容
格式: 变量名.charAt(数字)
## 3.boolean 布尔型 true-真\成立 false-假\不成立
场景: 1.自定义 2.判断,比较
## 4.undefined 与 5.null
undefined: 1. 自定义 2.只声明,未赋值。 var a;
null:空。
undefined和null区别:
1.undefined 值的空缺; null有值,但值为空
2.数据类型:undefined数据类型:undefined null数据类型:object空对象
## 6.object 对象类型【array数组,function函数,object对象】
array:数组
用[]包裹起来的就是数组,数据的集合。数据与数据之间,逗号分隔。数据可以是六大数据类型中的任何一种
鉴定数组方法: Array.isArray(变量名)
## 强制转换成数字类型
1.Number()
string: 只能转引号中全部都是纯数字,一旦出现非数字,则返回NaN
boolean: true-1 false-0
undefined: NaN
null: 0
object: NaN
2.parseInt
string: 取整。引号中可以出现非数字,但是一定要以数字开头,若非数字开头则返回NaN,遇到非数字则不再转换
boolean: NaN
undefined: NaN
null: NaN
object: NaN
3.parseFloat
string: 保留小数。引号中可以出现非数字,但是一定要以数字开头,若非数字开头则返回NaN,遇到非数字则不再转换
boolean: NaN
undefined: NaN
null: NaN
object: NaN
## 强制转换成字符串类型
1.String
格式: String(变量名)
都可以
2.toString()
无法转换 undefined 与 null
格式: 变量名.toString(进制)
## 强制转换成布尔值类型
Boolean
格式: Boolean(变量名)
string:如果字符串为空,则转换成false ,若字符串有内容则转换成true
number: 0-false 非0数字-true
undefined: false
null: false
object: true
空字符串,数字0,undefined,null : false
## 运算符
1.算数运算符 + - * / % ++ --
% : 取余数
++: 递增 增大一个数
--: 递减 减小一个数
a++: 先赋值 后运算
++a: 先运算 后赋值
2.赋值运算符 = += -= *= /=
=: 赋值 ,从右向左赋值。
+=:在原内容基础上,加上新的内容。
3.比较运算符 > < >= <= == === != !==
==:比较,只比较值,不比较数据类型。
===:全等。既比较值,也比较数据类型。
!=: 不等。只比较值,不比较数据类型。
!==: 不全等。既比较值,也比较数据类型。
4.逻辑运算符 && || !
&& : 与,和,且。 符号两侧都为真,则结果为真,若有一侧为false,则结果为假。
|| : 或。 符号两侧都为false时,结果为false,若有一侧为真,则结果为真。
! : 非。 取反。
5.三目运算符
格式:
判断条件? 成立时执行 : 不成立时执行;
## 运算符优先级
1.先算贴身的 !a ++a a--
先算乘除,后算加减
先算算数,后算比较
先算比较,后算逻辑
赋值在最后
## 方法:isNaN() is not a number
判断 是不是不是一个数字【返回布尔值】
true - 对,不是数字
false - 不,是数字