##js中的元素获取:
在使用js元素获取时,我们实际上使用的是dom方法获取,基本的获取方法分为四种:
1、利用元素id名获取到该元素:document.getElementById("id名")
这种方法获取到的元素是唯一的。
#####后面几种方法获取到的元素是一个数组类型,只要是拥有相同类型的都会获取到并且遍历,所以我们要选择那个需要自己从上往下数,在将第几个写到后缀【】里面
2、利用元素clas名获取到该元素:document.getElementsByClassName("class名")[n]
3、利用元素标签名获取到该元素:document.getElementsByTagName("标签名")[n]
4、利用元素name名获取到该元素:document.getElementsByName("name名")[n]
(去除以上几种之后还有:通过父节点获取、通过临近节点获取、通过子节点获取)
###常用的基本的循环判断:
#####1、switch判断:
switch循环是一种在确定结果有限的基础上使用的一种循环,将所有的可能出现的情况利用case将其列举出来,然后利用变量去匹配case,然后执行其后的语句。一般来说我们会在语句结束后加一个break;不然会继续往下执行代码。如图所示:
switch (变量){
case 条件1:
执行语句1
break;
case 条件2:
执行语句2
break;
case 条件3:
执行语句3
break;
default:
都不满足执行的语句
}
#####2、if-else判断:
if-else主要用来判断一个条件的成立和不成立执行不同的结果的语句,if(条件)是一个判断,如果语句满足就执行if下面的语句,反之则执行else底下的语句。同时我们可以多重嵌套if-else语句,多重判断一个变量。同时if-else中的if是必要存在的,else看你自己需不需要,不需要可不写。其如图:
//单次判断语句
if (条件1) {
成立执行语句
} else{
不成立执行语句
}
//多重嵌套
if (条件1) {
成立执行语句
if (条件2) {
成立执行语句
if (条件3) {
成立执行语句
} else{
不成立执行语句
}
} else{
不成立执行语句
}
} else{
不成立执行语句
}
//都是一一对于的关系
#####3、for循环:
for循环的语法:
for(表达式;条件表达式;表达式3){
条件成立执行的语句
}
如:for(i=0;i<10;i++){
conslo.log(i)//控制台会输出0-9
}
总而言之就是for()里面的东西分成三部分:初始化循环变量;判断条件; 更新循环变量。同时for循环也是可以嵌套的和if嵌套差不多这里列举一个:
//利用嵌套循环在页面生成一个红黄交错的表格
var table = "<table border='1' cellspacing='3' cellpadding='3'>";
var bgcolor = ""
for(var i = 0 ; i < 5 ; i++){
bgcolor=i%2==0?"red":"yellow"
table +="<tr bgcolor="+bgcolor+">"
for(var j = 0 ; j < 5 ; j++){
table +="<td>aaaa</td>"
}
table +="</tr>"
}
table +="</table>"
document.write(table)
#####4.while循环和do-while循环:
while循环和do-while循环一个是先判断再执行,一个是先执行后判断。
while循环执行的步骤:先初始化变量,判断条件,成立就执行循环体,更新循环变量,继续判断变量…一直到条件不满足结束。
var a = 1
while(a<=100){
console.log(a)
a++
}
//这段程序就是在控制台输出1到100的值
do-while循环执行的步骤:先初始化变量,执行循环体,更新循环变量,判断条件,满足就继续,不满足就跳出循环。如下图所示:
var a = 20
do{
console.log(a)//输出的是20
a++
}whlie(i<10)
console.log(a)//输出的是21
#####5、for-in循环:
for-in循环是专门用来循环对象的,因为对象是没有长度和顺序的,所以使用for循环是没用的,其循环体的结构是:for(var 变量 in 需要循环对象){ 循环体 }同时需要调用其中数据时需要这样的格式:循环对象[变量]。列如:
//创建对象
var Obj = {a:1,b:2}
//开始准备遍历对象
for(var i in Obj){
console.log(i)//结果为a,b
console.log(Obj[i])//结果为1,2
}