循環
- 循環的目的:重複執行某些語句或者代碼;
- js中,有三種循環
(1) for 循環
<script>
// for (初始變量;條件表達式;操作表達式) {
//循環體
// }
//初始換變量 就是用 var聲明的一個普通變量;通常作爲計數器使用
//條件表達式 就是用來決定每一次循環是否繼續執行 就是終止條件
//操作表達式 就是每次循環最後執行的代碼 經常用於我們計數器變量進行更新
for(var i = 1; i <= 100; i++){
console.log('你好嗎?');
}
</script>
<script>
//for循環可以重複執行不同的代碼 因爲我們有計數器變量 i 的存在 i每次循環值都會變化
//我們想要輸入一個人 1~100歲
// for(var i = 1; i <= 100; i++){
// console.log('這個人今年' + i + '歲了!');
//}
for (var i = 1; i <= 100; i++) {
if(i == 1){
console.log('出生了');
}else if(i == 100){
console.log('這個人100歲,死了');
}else{
console.log('這個人今年' + i +'歲了!');
}
}
</script>
<script>
//1.求1~100之間的平均值 需要·sum和的變量 需要一個平均值的變量 average
var sum = 0;
var average = 0;
for(var i = 0;i <= 100;i++){
sum = sum + i;
}
average = sum/100;
console.log(average);
//2.求1~100之間所有奇數和偶數的和
var even = 0;
var odd = 0;
for(var i = 1;i <= 100;i++){
if(i % 2 == 0){
even = even + i;
}else {
odd = odd + i;
}
}
console.log('1~100之間奇數的和爲:' + even);
console.log('1~100之間偶數的和爲:' + odd);
//3.求1~100之間所有能被3整除的數字的和
var result = 0;
for(var i = 1; i <= 100; i++){
if(i % 3 == 0){
result = result + i;
}
}
console.log(result);
</script>
雙重for循環:
<script>
//1.雙重for循環 語法結構
// for(外層的初始變量;外層的條件表達式;外層的操作表達式){
// for(裏層的初始換變量;外層的條件表達式;外層的操作表達式){
// }
// }
//2.我們可以把裏面的循環看作是外層循環的語句
//3.外層循環循環一次,裏面的循環執行全部
//4.代碼驗證
// for( var i = 1; i <= 3; i++){
// console.log('這是外層·循環第' + i + '次');
// for( var j = 1; j <= 3; j++){
// console.log('這是裏層循環第' + j + '次');
// }
// }
var str = '';
for(var i = 1; i <= 5; i++){
for(var j = 1;j <= 5; j++){
str = str + '☆';
}
str = str + '\n';
}
console.log(str);
</script>
<script>
//打印九九乘法表
//一共有九行,但是每行個數不一樣,因此需要用到雙重for循環
//外層的for循環控制行數 i,循環9次,可以打印9行
//內層的for循環控制每行公式 j
//核心算法:每一行 公式個數正好與行數一致 ,j <= i;
//每行打印完畢,都需要重新換一行
var str = '';
for(var i = 1;i <= 9; i++){
for(var j = 1; j <= i; j++){
// str = str +'☆';
str += j + '×' + i + '=' + i * j + '\t';
}
str = str + '\n';
}
console.log(str);
</script>
(2)while循環
<script>
//1.while 循環語法結構
// while (條件表達式){
// }
//2.執行思路 當條件表達式結果爲true 則執行循環體 否則 退出循環
//3.代碼驗證
var num = 1;
while(num < 100){
console.log('你好嗎');
num++;
}
//4.裏面應該也有計數器 初始化變量
//5.裏面應該也有操作表達式 完成計數器的更新 防止死循環
</script>
(3)do……while循環
<script>
//1.do……while 語法結構
// do{
//循環體
// }while(條件表達式)
//執行思路 和while不同的地方在於do while 先執行一次循環體 再判斷一次條件 如果條件爲真則繼續執行循環體,否則退出循環
//3.代碼驗證
var i = 1;
do{
console.log('how are you?');
i++;
}while(i <= 100)
//4.do……while至少執行一次循環體
</script>
continue 和 break
continue:用於跳出本次循環
<script>
//continue 關鍵字 退出本次(當前次的循環)繼續執行剩餘次數循環
//1.求1~100之間,除了能被7整數之外的整數和
var sum = 0;
for(var i = 1; i <= 100; i++){
if (i % 7 == 0){
continue;
}
sum += i;
}
console.log(sum);
</script>
braek: 退出整個循環
<script>
for(var i = 1; i<= 5; i++){
if(i == 3){
break;
}
console.log(i);// 1 2
}
</script>