JavaScript学习2:变量、数据类型、运算符、分支、循环
文章目录
一、变量
1. 变量概述
变量是用于存放数据的容器
本质:变量是程序在内存中申请的一块用来存放数据的空间
标识符、关键字、保留字:
2. 变量的使用
1.声明变量 var age;
2.赋值 age=18;
变量的初始化(声明并赋值):var age=18;
3. 变量的语法扩展
更新变量:一个变量被覆盖之后,以最后一个值为准
声明多个变量:
var age = 18,
address = ‘guangzhou’;
声明变量特殊情况:
**注意:**js是逐句解释执行的,因此遇到报错后面不再执行
4. 变量的命名规范
不要使用name作为变量名,在浏览器中有特殊的含义
二、数据类型
1. 数据类型简介
与其他编程语言不一样的地方!!!!
JavaScript的变量数据类型在执行该行代码时根据具体的赋值来确定的(和java中的 int age 就确定是整型不同)。
变量的数据类型是可变的**(动态的)**
JS把数据类型分为两类:
- 简单数据类型(Number、String、Boolean、Undefined、Null)
- 复杂数据类型(Object)
2. 简单数据类型
注意:
① 数值型Number
- 数字型包括整型和浮点型,可以赋值八进制(前面加0)、十六进制(前面加0x)
- js中的数值最大最小值:
- 数字型的三个特殊值:
- isNaN():判断是否为非数值
isNaN(12)——>false
isNaN(‘VIVIAN’)——>true
② 字符型String
-
引号的使用:外单内双,外双内单
-
转义符:
-
字符串长度:str.length
-
字符串拼接:字符串+任何类型=拼接后新的字符串 数值相加,字符相连
布尔型:true相当于1,false相当于0
undefined:undefined+‘vivian’=undefinedvivian ; undefined + 1=NaN
null:null+‘vivian’=nullvivian ; null+1=1
获取变量的数据类型
var age = 10;
typeof age ——>number
3. 数据类型转换
①转换为字符串
str = num.toString()
str = String(num)
str = num+’’(隐式转换)
②转换为数字型(重点)
parseInt(str):例如 parseInt(‘3.94’) = 3 ; parseInt(‘120px’) = 120(特殊的以数字开头截掉后面字母)
parseFloat(str)
Number(str)
利用算数运算- * / 隐式转换:‘12’ -0 = 12 ; ‘123’ - ‘120’ =3
③转换为布尔型
Boolean(str):str为 ‘’、0、NaN、null、undefined时结果为false 否则为true
三、运算符
- 算数运算符:+ - * / %(取模/取余)
注意尽量不用浮点数来运算和比较,会有精度误差 - 递增和递减运算符:
前置:++num、–num 先加(减)后返回值
后置:num++、num-- 先返回原值后加(减) 例如:var age = 10;age++ +10 返回20
var e = 10;
var f = e++ + ++e;
console.log(f); //f的值是22
- 比较运算符:<、>、>=、<=、==(默认转换数据类型)、!= 、= = =(全等)、!= =
区别’18’ = = 18 返回true , ‘18’ = = = 18 返回false - 逻辑运算符:&&、||、!
短路运算原理(逻辑中断):当有多个表达式(值)时,左边的表达式可以确定结果时,就不再继续运算右边表达式的值。
例如: 123&&456 返回456 , 0&&456 返回0
123||456 返回123,0||456 返回456
var num = 0;
console.log(123 || num++);//逻辑中断 num++没有执行 num=0
console.log(num);
- 赋值运算符:=、+=、-=、*=、/=、%=
- 运算符优先级
四、分支结构(if、switch)
- 流程控制:顺序结构、分支结构、循环结构
- if语句:
if () {
} else if () {
} else {
}
- 三元表达式:条件表达式 ?表达式1 : 表达式2
- switch语句:
注意是全等的匹配关系
没有break当匹配上之后会顺序执行下去
switch(表达式) {
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
default:
执行最后的语句;
}
五、循环结构
- for循环:
for (var i = 1; i <= 100; i++) {
console.log(i);
}
断点调试:
2. while循环:
while (条件表达式) {
循环体
}
- do while循环:
do {
循环体
} while (条件表达式)
continue:立即退出本次循环,进入下一次循环
break:立即跳出整个循环