第一周第三天笔记

123 阅读4分钟

一、循环结构:

问题:在控制台打印输出1000句hello world?

    console.log("1hello world");
    ...
    console.log("1000hello world");

生活中的循环?

    吃饭
    睡觉
    上课
    上班
    自转
    公转
    活着

循环结构:反复执行 相同 或 相似的操作

    循环三要素:
        1、循环条件:开始 - 结束,循环的次数
        2、循环体:做的操作是什么
        3、循环变量:记录着我们当前在哪一次,而且他会不断的变化

二、3种循环:

1、while循环:

    语法:
        var 循环变量=几;
        while(循环条件){
                循环体;
                循环变量变化;
        }
        
    执行原理:首先创建出循环变量,判断循环条件,如果条件满足,则做一次循环体操作,并不会退出循环,而会回过头再次判断循环条件满不满足,如果满足,则做一次循环体操作,...直到条件不满足,才会退出循环
    宏观上感觉循环好像一瞬间就结束了,但是微观上循环其实是一次一次执行的

    特殊:
        1、有的时候可能真的需要使用死循环:默认永远不会停下来的循环
                何时使用:不确定循环次数的时候
                while(true){死循环}

        2、死循环其实也会有一天停下来,如何停下来呢?
                break; - 退出整个循环,多半都是用来搭配死循环的
                continue; - 退出本次循环,下一次依然会执行

2、*for循环:

和while的原理是一样的,但是他比while看上去更加的简洁,更加的舒服

    语法:
		for(var 循环变量=几;循环条件;循环变量变化){
			循环体;
		}

    特殊:
		死循环:for(;;){}

面试题:while 和 for的区别?

    whilefor在原理上几乎没有区别?
    一般来说我们不确定循环次数的时候,会使用while循环 - 死循环
    一般来说我们确定循环次数的时候,会使用for循环 - 大部分情况都是他

3、do...while循环:

    废物:while我们都不想用,何况是更麻烦的do...while - 今日一见,不会再见
    语法:
            var 循环变量=几;
            do{
                    循环体;
                    循环变量的变化
            }while(循环条件)

面试题:while 和 do...while的区别?

    区别只看第一次,如果第一次条件都满足,那么两者没有任何区别。
    但是如果第一次条件不满足,那么while一次都不会执行
                             那么do...while至少会执行一次

***********Function的基础:

1、概念:

    Function 也叫函数也叫方法,【先预定义】好,以后可以【反复使用】的【代码段】

2、如何使用函数:2步

    1、定义/创建/声明:
            function 函数名(){
                    函数体/代码段;
            }
            注意:函数创建后,不会立刻执行,需要我们去调用函数

    2、调用函数:21、在js内部写:函数名(); - 程序员写几次就会调用几次

            2、在HTML上面绑定事件:
                    <elem onclick="函数名()"></elem> - 什么元素都可以绑定事件

    3、我们以后何时使用函数呢?
            1、不希望打开页面立刻执行
            2、希望用户来触发提升用户的体验感
            3、以后每一个独立的功能(作业)都要封装为一个函数
            函数在js里的地位极高,函数是js的第一等公民

    4、但是好像和我们目前见过的别的函数不太一样啊
            一阶段就已经见过函数了:
                rotate(180deg)
                url(2.jpg)
                
                这种写法叫做带参数的函数:21、创建出带有形参的函数 - 形参:其实就是一个变量,只不过不需要加var,而且不需要赋值,所以称之为叫做形式参数 - 简称形参
                            function 函数名(形参,...){
                                    函数体/代码段;
                            }

                    2、使用带有形参的函数时,必须传入实参 - 实际参数,就是你传递过去的值
                            函数名(实参,...)

                    注意:传参的时候顺序是不能乱的,必须和形参的顺序一一对应,数量不多不少
    总结:
		1、不带参数的函数:用于执行一些固定操作
		2、带参数的函数:可以根据我们传入的实参的不同,做的略微不同

总结:循环也能反复执行,函数也能反复执行,他们的区别在哪里?

    1、循环:几乎是一瞬间就完毕了
    2、函数:需要调用后才会执行

扩展:随机整数的公式:

    var r=parseInt(Math.random()*(max-min+1)+min)