JS--Day04(循环嵌套+函数)

文章包含四个编程练习,涉及JavaScript的基础知识:1)根据运算符计算表达式;2)求阶乘序列和;3)计算斐波那契数列前20项和;4)模拟篮球弹起高度问题。此外,讨论了for循环嵌套实现九九乘法表,以及break和continue在循环中的作用。最后介绍了函数的概念、定义、调用、参数传递和返回值。
摘要由CSDN通过智能技术生成

一.day03作业

//  1.编程实现以下功能: 读入两个运算数(data1和data2) 及一个运算符(op)计算表达式data1 op data2的值,其中op可为 +,-,*,/。
    var data1 = 123;
    var data2 = 456;
    var op = "-";

    switch(op){
        case "+":
            console.log(data1 + data2);
            break;
        case "-":
            console.log(data1 - data2);
            break;
        case "*":
            console.log(data1 * data2);
            break;
        case "/":
            console.log(data1 / data2);
            break;
    }


// 2. 求1!+2!+3!+...+10!的值
    var x = 1;
    i的阶乘
    var sum = 0;
    for(var i=1; i<=10; i++){
        x *= i;
        // console.log(x);
        sum += x;
    }

    console.log(sum);


  //3. 求2/1,3/2,5/3,8/5,13/8,21/13,...  前20项之和。
    var m,n;

    n = 2;
    m = 1;

    var sum = 0;
    var t = 0;

    for(var i=2; i<=20; i++){
        sum += n/m;
        t = n;
        n = m + n;
        m = t;
    }

    console.log(sum);

  // 4.篮球从5米高的地方掉下来,每次弹起的高度是原来的30%,经过几次弹起,篮球的高度小于0.1米。

    var h = 5;
    var count = 0;

    while (h > 0.1) {
        h *= 0.3;
        count++;
    }

    console.log(count);

二.for循环嵌套

循环嵌套:循环的循环体还是一个循环(循环总次数是内外循环次数的乘积)

注意事项:循环嵌套不易超过三层(用的比较多的是两层)

    //=============================九九乘法表=============================
    //面向过程的编程思想:强调步骤,一步接一步
    //j控制行,i控制*的个数
    //第几行就有几个*--->第j行就有j个*-->i<=j

    for (var j = 1; j <= 9; j++) {
        for (var i = 1; i <= j; i++) {
            document.write(i + "*" + j + "=" + i * j + " ");
        }
        document.write("<br>");
    }

三.break/continue

break:跳出本层循环

         while(true){
             while(true){
                 console.log("嘤嘤嘤");
                break;
             }
         }      

continue:跳出本次循环

    var sum = 0;
    for(var i=0; i<7; i++){//i   0  1  2  3  4  5  6
        if(i%2){           //sum 0  0  2  2  6  6  12
            continue;
        }
        sum += i;
    }

四.函数

①函数概念:封装的最小的代码功能模块
②作用:1.程序员角度,提高代码的复用性 2.业务角度,a.协同开发,b.便于维护
③函数的定义:创造一个功能,但没有使用
     function 标识符(参数列表){函数头
         函数体
     }

function:关键字,告知编译器后面的标识符是一个函数

标识符:函数的名字,满足标识符命名规则,驼峰命名法--->和标识符作为变量一毛一样

参数列表:a.无参--->参数列表什么都不写

b.有参--->参数列表,是由外界传进来的数值,用变量直接接收

函数体:原来在script间,怎么写代码,就怎么在函数体中写代码 只是将部分代码包裹进了该函数

④函数的调用:
 // 函数的调用:功能模块的使用
    // a.无参
     函数名();
     function f1(){
         console.log("黄子诚");
         console.log("鹿哈");
         console.log("林俊卡");
     }
     f1();
     f1();
   

    // b.有参
     函数名(参数1,参数2);
    function max(a,b){
        console.log(a>b?a:b);
    }
    max(1,2);
    max(3,4);
⑤函数的参数参数:外界与函数交互的桥梁,本质就是变量

形式参数:在函数定义时,函数名后面的参数列表,也称为形参

实际参数:在函数调用时,函数名后面的参数列表,也称为实参

传参的特点:

a.值传递--->基本类型数据作为实参

只能由实参传给形参,不能有形参传给实参

(因为实参和形参是不同的内存单元,形参无法改变实参的数值,且形参的生命周期,在函数调用时空间 开辟,在函数调用结束,空间销毁。)

b.引用类型数据传递:双向,形参也能改实参

⑥函数的返回值

返回值:如果一个函数运行完后,需要返回 一个 数值,该值就是函数的返回值。

返回值用return关键字带回

注意事项:有return关键字的函数,才有返回值 没有return关键字的函数,是无返回值的

 function max(a,b){
        var t;
        t = a>b?a:b;

        return t;
    }
    var x = max(1,3);//max(1,3)除了执行相关代码外,还代表一个数值,这个值就是return带回的
    console.log(x);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值