一、分支结构
一、流程控制
二、顺序流程控制
三、分支流程控制if语句
if(条件表达式){//执行语句}
else if(条件表达式){//执行语句}
else{//否则执行语句}
四、三元表达式
条件表达式 ? 表达式1 :表达式2;
若条件表达式为真则返回1,为假则返回2
五、分支流程控制switch语句
switch(表达式){
case value1:
执行语句1;
break;
case value2:
执行语句2;
break;
...
default:
执行最后语句;
}
用表达式的值与case后面的选项值相匹配,如果匹配上就执行语句,如果都没匹配则执行default。
- 表达式的值必须和case的值是===
- 要有break 不然会顺序执行
二、循环
一、for循环
类同c
二、双重for循环
三、while循环
while(条件表达式){
//循环体}
- 当条件表达式结果为true则执行循环体,否则退出。
- 里面要有计数器 初始化变量 防止死循环。
四、do while循环
do{
//循环体
}while(条件表达式)
先执行一次循环体再判断条件。至少会执行一次。
五、continue break
continue用于立即跳出本年次循环继续下一次循环。
break立即跳出整个循环。
三、数组
一、创建数组
var 数组名 = new Array();
var arr = new Array();
数组里元素逗号分割。
二、获取数组中的元素
三、遍历数组
数组长度是元素个数,不是索引(下标)
arr.length动态监测数组元素个数,for循环里可以用。
四、数组中新增元素
1.修改length长度新增元素
2.修改索引号新增元素 追加数组元素。原先占有的就是替换元素。
不要直接给数组赋值,否则会覆盖掉全部数据
五、数组案例
冒泡排序:依次比较两个元素,如果顺序错误就交换。
四、函数
一、函数的使用
声明函数:
function 函数名(形参1,形参2,...){
//函数体
return 需要返回的结果;
}
调用函数:
函数名(实参1,实参2,...);
函数封装:把一个或多个功能通过函数的方式封装起来,对外只提供一个简单地接口
二、函数的参数
形参是接收实参的,形参可以看做是不用声明的变量
- 如果实参与形参个数一致则正常出结果
- 如果实参多于形参个数则会取到形参的个数
- 如果实参小于形参个数 多的形参定义是undefined,结果为NaN
三、函数的返回值
- return只能返回一个值,如果用都好隔开多个值以最后一个为准
- return后面的语句不再执行
- return [];可以返回一个数组
- 函数没有return返回undefined
四、arguments的使用
当不确定又多少个参数传递的时候可用arguments来获取。arguments里面存储了所有传递过来的实参。(只有函数又arguments且每个函数都内置好了)
它展示形式是一个伪数组,因此可以进行遍历取里面的值:
- 具有length属性:arguments.length
- 按索引方式存储数据
- 不具有数组的push,pop等方法
五、函数的两种声明方式
1.利用函数关键字自定义函数
2.函数表达式:var 变量名 = function(){} !!变量名不是函数名
调用的时候用变量名调用