流程控制语句:通过流程控制语句可以控制程序执行流程,使程序可以根据一定的条件来选择执行
语句分类:
1.条件判断语句:if...(else if)...else...
2.条件分支语句:switch/case
3.循环语句:while for do...while
条件判断语句:使用条件判断语句可以在执行某个语句之前进行判断,条件成立则执行语句,不成立则不执行
语法:1:if(条件表达式){语句}
if语句只能控制紧随其后的那个语句,若想控制多条语句,可以将这些语句统一放入代码块中
2:if(条件表达式){语句...}
else{语句...}
要么if要么else
3:多重条件判断语句:if...else if...else
条件分支语句:
语法:switch(条件表达式){case 表达式:语句...break;
case 表达式:语句...break;
default:语句...break;}
数组:面向对象的方式创建(不常用)
var arr01 = new Array(1,2,3,'abc'); (new Array为固定语法)
直接创建(常用)
var arr02 = [1,2,3,'def'];
数组常用方法:
函数名.length:获取数组内元素个数
函数名[下标]:获取下标代表的元素内容
函数名[下标].length:获取下标代表的数组的元素个数
函数名[下标][内下标]:获取下标代表数组中的下标代表的元素内容
aRr.join(''); 句中元素间插入
aRr.push(5); 在元素最后方添加一个5
aRr.pop(); 在元素最后方减去一个
aRr.unshift(0); 在元素最前方添加一个0
aRr.shift(); 在元素最前方减去一个
aRr.reverse(); 反转 将元素倒过来
arr2.indexof('b'); 查看arr2中 'b'第一次出现时的下标索引
arr2.splice(2,1); 从下标为二的元素开始,删除一个元素
arr2.splice(2,1,'e'); 从下标为二的元素开始,删除一个元素,再在此处插入一个元素'e'
【//<li id='li1'>1</li>
document.getElementsById('li1');】
【//<li class='li1'>1</li>
document.getElementsByClassName('li1');】
【// <li>1</li>获取页面所有的li
var lis = document.getElementsByTagName('li');】
【// 先获取ul
var list01 = document.getElementsById('list01');
//再获取ul下的所有li
var lis = list01.getElementsByTagName('li');】
【lis.pop(); //数据集不能调用数组的常用方法】
【lis.style.backgroundColor = 'gold'; //数据集不能直接设置样式】
lis[0].style.backgroundColor = 'gold';
循环语句:通过循环语句可以反复执行一段代码多次
while循环- 语法:
while(条件表达式){
语句...
}
*while语句在执行时,先对条件表达式进行求值判断,值为true,则执行循环体,false则终止循环
do...while循环-语法:
do{
语句...
}while(条件表达式)
*会先执行循环体,循环体执行过以后才对表达式进行判断,可保证循环体至少执行一次
for循环-语法:
for(①初始化表达式;②条件表达式;④更新表达式){③语句...}
死循环写法:
while(true){
if(j>10){
break;//退出整个循环
}
j++;
}
//for循环的死循环写法
for(;;){}
break关键字:可以用来退出switch或循环语句
不能在if语句中使用break和continue
break关键字,会立即终止【离他最近】的那个循环语句
continue关键字:可以用来跳过当次循环
同样continue也是默认只会对离他最近的循环循环起作用
可以为循环语句创建一个label,来标识当前的循环
label:循环语句
使用break语句时,可以在break后跟着一个label,
这样break将会结束指定的循环,而不是最近的
outer:
for(var i=0 ; i<5 ; i++){
console.log("@外层循环"+i);
for(var j=0 ; j<5; j++){
console.log("内层循环:"+j);
break outer;
}
}