08-js流程控制
阿新 • • 發佈:2019-05-08
重復 pre 16px break rdquo 下標 htm color 語句
# js流程控制
> 流程控制用於基於不同的條件來執行不同的動作。
### if語句
>if... else ...
>if ... else if ... else...
> 可以單分支,雙分支,也可以多分支,需要註意 else if中間必須要有空格
```
if (condition){
//當條件為 true 時執行的代碼
}else{
//當條件不為 true 時執行的代碼
}
```
### switch語句
> 多分支語句: switch(){。 case :。。。。}
>
> switch 語句用於基於不同的條件來執行不同的動作。
```
switch(n){
case 1:
//執行代碼塊 1
break;
case 2:
//執行代碼塊 2
break;
default:
//與 case 1 和 case 2 不同時執行的代碼
}
```
# js循環
> 程序中進行有規律的重復性操作,需要用到循環語句。
> break 和 continue 語句對循環中的代碼執行提供了更嚴格的控制。
### **for循環**
```
for(var i=0;i<len;i++){
......
}
```
### **while循環**
```
var i=0;
while(i<8){
......
i++;
}
```
### for-in 語句
> for-in 語句是嚴格的叠代語句,用於枚舉對象的屬性。
```
var a = [10,20,30,40,50];
//叠代的是數組的下標。
for(i in a){
document.write(a[i]);
}
//輸出: 1020304050
```
# js元素獲取與操作
> 可以使用內置對象document上的getElementById方法來獲取頁面上設置了id屬性的元素,獲取到的是一個html對象,然後將它賦值給一個變量,比如:
```
<script type="text/javascript">
var oDiv = document.getElementById(‘div1‘);
</script>
....
<div id="div1">這是一個div元素</div>
```
> 上面的語句,如果把javascript寫在元素的上面,就會出錯,因為頁面上從上往下加載執行的,javascript去頁面上獲取元素div1的時候,元素div1還沒有加載,解決方法有兩種:
**第一種方法:將javascript放到頁面最下邊**
```
....
<div id="div1">這是一個div元素</div>
....
<script type="text/javascript">
var oDiv = document.getElementById(‘div1‘);
</script>
</body>
```
**第二種方法:將javascript語句放到window.onload觸發的函數裏面,獲取元素的語句會在頁面加載完後才執行,就不會出錯了。**
```
<script type="text/javascript">
window.onload = function(){
var oDiv = document.getElementById(‘div1‘);
}
</script>
....
<div id="div1">這是一個div元素</div>
```
## 樣式操作
> 標簽對象.style.css屬性名="值" //改變標簽對象的樣式。
>
> 示例:id.style.color="red";
>
> 註意:屬性名相當於變量名,所以css屬性名中含有雙拼詞的(font-size)的減號要去掉,將後面的首字母大寫。fontSize
## 文本操作
> 標簽對象.innerHTML="內容";//在標簽對象內放置指定內容
>
> 獲取一般用 innerText
## 表單中值的操作
> 標簽對象.value; //獲取標簽對象的value值
>
> 標簽對象.value=”值“;//設置標簽對象的value值
08-js流程控制