变量 var
var 变量名 变量的声明,只是开辟了一块内存空间,起一个名字
var 变量名 = 值 ; 定义,给变量赋值
命名规则:
大驼峰 小驼峰 可以由数字,字母,下划线,$组成,但是不能以数字开头 不能为关键字和保留字
数据类型
基本数据类型
number:数字 数字一般用来做数学运算,数字类包含 正数 负数 0 进制 Infinity NaN
string:字符串 用单引或双引包起来就是字符串
Boolean:布尔 true和false
null:空的
undefined:未被定义的
复杂数据类型
object:对象
array:数组
function():函数
数据类型检测的方式-typeof
type-of(数据)
数据类型的转换
4.1强制数据类型转换
4.1.1转为数字
number(数据) 只能转化纯数字,且只能识别一位小数
多个小数点和不能识别(undefined)返回NaN false和null返回0 true返回1
parseInt(数据) 只能转化纯数字,不能识别小数
转化成功返回对应数值,转化失败返回NaN
parseFloat(数据) 只能转化纯数字,可以识别多位小数
转化成功返回对应数值,转化失败返回NaN
4.1.2转化为字符串
string(数据)
数据.toString()
4.1.3转化为布尔值
Boolean(数据) 出来0,null,undefined,NaN和”/“这5个值为假false之外,其他全为真true
4.2隐式数据类型转换
浏览器内置帮我们去做的,不需要我们手动做
例如:加号(+)一旦遇到字符串表示拼接,会将另一边也转为字符串进行拼接(接下来在运算符中会说)
isNaN(数据); 判断当前数据是不是一个数字,是一个数字返回false,不是一个数字返回true
数字.toFixed(n); 保留n位小数,返回一个字符串
运算符
算术运算符
+ - * / (取余%) ++ --
赋值运算符
+= -= *= /= %=
比较运算符
普通比较运算符:比较运算符返回结果是布尔值 < > = >= <= == !=
规律:
数据在进行比较的时候会尽量转为数字(隐式转换,符合Number的规律)
字符串进行比较,是按照Unicode编码进行比较的(ASCII),首先是按位比较的,某一位比较出结果了,后边的就不比了
NaN永远不等于NaN
null等于undefined (自己肯定等于自己),但是null和undefined与其它数据类型都不相等 (==)
绝对比较:=== 绝对等于 !== 绝对不等于
逻辑运算符
&& || !
&&(与):属于且的关系,都为真才为真,一个为假即为假
||(或):属于或者的关系,一个为真即为真,都假才假
!(非) :做取反操作,先将当前数据转为布尔值(符合Boolean的规律,隐式转换),对当前布尔值进行取反 (返回值是布尔值)
三目运算符
条件 ? 条件成立执行的代码段:条件不成立执行的代码段;