JavaScript学习笔记

程序运行的三大结构:

1.顺序结构:代码从上到下,从左到右依次执行(不重不漏).

2.分支结构:根据不同的情况,执行不同的代码.

3.循环语句:重复执行某段代码.

if分支结构

var time = 8;
if(time===8){
	console.log('八点了,该起床了');
}

if-else双路分支结构

var time = 7;
if(time>=8){
	console.log('八点了,该起床了');
}else{
	console.log('还没到八点,再睡会!');
}

if-elseif多路分支


// 婴幼儿(0到6岁)、少儿(7到12岁)、青少年(13到17岁)
// 青年(18到45岁)、中年(46到69岁)、老年(69岁以上)

var age = 28;
if(age<=6){
	console.log('婴幼儿');
}else if(age<=12){
	console.log('少儿');
}else if(age<=17){
	console.log('青少年');
}else if(age<=45){
	console.log('青年');
}else if(age<=69){
	console.log('中年');
}else{
	console.log('老年');
}

switch多路分支语句

var day = '今天是星期几呢?';
switch (new Date().getDay()) {
    case 0:
        day = "星期天";
        break;
    case 1:
        day = "星期一";
        break;
    case 2:
        day = "星期二";
         break;
    case 3:
        day = "星期三";
        break;
    case 4:
        day = "星期四";
        break;
    case 5:
        day = "星期五";
        break;
    case 6:
        day = "星期六";
		berak;
	default:
		day = '没有这个日期';
}

console.log(day);

// Switch case 使用严格比较(===)

while循环结构

file

while循环的语法:
1
while(2){ 
    3;
    4;
}
1.循环变量初始值
2.循环条件
3.循环增量 
4.循环体
while循环的执行顺序:
第一次:1243
以后:243
判断循环条件是否成立,如果成立,就执行循环体,否则,循环结束.

例子:

// 用while循环打印1-10的数字
var i = 1;
while(i<=10){
	console.log(i++);
}

console.log(i);

// 用while循环计算 1 + 2 + 3 + ... + 100的和
var i = 1;
var sum = 0;

while(i<=100){
	sum += (i++);
}
console.log(sum);

// 写一个程序打印1到100这些数字。但是遇到数字为3的倍数的时候,打印“Fizz”替代数字,
// 5的倍数用“BUzz”代替,既是3的倍数又是5的倍数打印“abcde "。

var i = 1;
while(i<=100){
	if(i%15==0){
		console.log('abcde');
	}else if(i%3==0){
		console.log('Fizz');
	}else if(i%5==0){
		console.log('Buzz');
	}else{
		console.log(i);
	}
	i++;
}

何时用for,何时用while???

答:当知道循环次数时用for.不知道循环次数时用while.

do-while循环结构

file

语法:

1
do {
   4;
   3;
}while(2)
do...while的执行顺序
第一次 1432
以后 432
先执行循环体,再判断循环条件,如果成立,再执行循环体,如果不成立,跳出循环.

例子:

while(false) {
	docunent.urite('我想用while来写一行');
}

do{
	docunent.urite('我用do-uhile业写一行');
}while(fa1se);

break-continue

var i = 0;
while(i++ < 10){
	if(i==5) {
		break; // 破坏循环,不在循环下去了
	}
	console.log(i);
}


var i = 0;
while(i++ < 10){
	if(i==5) {
		continue; // 破坏本次循环,继续下次循环
	}
	console.log(i);
}

for循环

for 循环的语法如下:


for (语句 1; 语句 2; 语句 3) {
     要执行的代码块
}

语句 1 在循环(代码块)开始之前执行。
语句 2 定义运行循环(代码块)的条件。
语句 3 会在循环(代码块)每次被执行后执行。

// 例子
for (i = 0; i < 5; i++) {
     text += "数字是 " + i + "<br>";
}

从上面的代码中,您可以了解到:

语句 1 在循环开始之前设置了一个变量(var i = 0)。
语句 2 定义运行循环的条件(i 必须小于 5)。
语句 3 会在代码块每次执行之后对值进行递增(i++)。

语句 1

通常,您会使用语句 1 来初始化循环中所使用的的变量(i = 0)。

但情况并不总是这样,JavaScript 不会在意。语句 1 是可选的。

您可以在语句 1 中初始化多个值(由逗号分隔):

for (i = 0, len = cars.length, text = ""; i < len; i++) { 
    text += cars[i] + "<br>";
}

而且您还可以省略语句 1(比如在循环开始前设置好值):

var i = 2;
var len = cars.length;
var text = "";
for (; i < len; i++) { 
    text += cars[i] + "<br>";
}

语句 2

通常语句 2 用于计算初始变量的条件。

但情况并不总是这样,JavaScript 不会在意。语句 2 也是可选的。

如果语句 2 返回 true,那么循环会重新开始,如果返回 false,则循环将结束。

如果省略语句 2,那么必须在循环中提供一个 break。否则循环永远不会结束。

语句 3

通常语句 3 会递增初始变量的值。

但情况并不总是这样,JavaScript 不会在意。语句 3 也是可选的。

语句 3 可做任何事情,比如负递增(i--),正递增(i = i + 15),或者任何其他事情。

语句 3 也可被省略(比如当您在循环内递增值时):

var i = 0;
var len = cars.length;
for (; i < len; ) { 
    text += cars[i] + "<br>";
      i++;
}

For/In 循环

JavaScript for/in 语句遍历对象的属性:

var person = {fname:"Bill", lname:"Gates", age:62}; 

var x,text = "";
for (x in person) {
    text += person[x];
}