Web前端复习——Javascript复习(函数+分支结构)

    xiaoxiao2021-04-02  38

    1、函数

       指的是为一个任务进行封装在一个代码块中。

    (1)函数使用:声明、定义和调用

    function 函数名([参数变量列表]){

    函数体:包含任务的步骤清单(代码块)

    [return 返回值]

    }

    如何调用:[var 返回值] = 函数名([参数值列表]);

    函数只有调用时才执行(反复调用,反复执行)

    2、变量作用域:一个变量的可用范围

    (1)JS中有两种作用域——

    a、全局作用域:一个变量可以在程序的任何位置被访问

    b、函数作用域:一个变量仅在函数调用时,内部被访问

    (2)JS中有两种变量——

    a、全局变量:定义在全局作用域中的变量 又分为2种:

    1.直接在任何函数外声明的变量

    全局变量都属于window——全局对象

     2.无论在任何位置,为从未声明过的变量赋值时,会自动在全局创建同名全局变量

    b、局部变量:定义在函数作用域中的变量,又分为2种:

    1.在函数定义内部声明的变量

            2.参数变量天生就是局部变量

    总结:(1)函数其实是引用类型的对象,

          (2)函数名是指向函数对象的变量。

    3、函数

    (1)声明提前:在程序执行前或函数被调用前

    原理:将var声明的变量和function声明的函数,提前到当前作用域的顶部集中创建。

    强调——仅声明提前,赋值留在原地

    (2)按值传参

    原理:js中无论变量间赋值或使用变量传递参数时,都是将变量中的值,赋值一个副本给对方

       程序结构分为3大类

    a、顺序:程序默认从上到下逐行换行

    b、分支:根据条件判断的结果,有选择的执行不同代码段

    c、循环:程序可以反复执行同一代码段,到临界时退出

    4、分支结构

    需求分析——IPO(Input Process Output)

    以一个案例作为分析——

    ·编写一个收银柜台收款程序, ·根据商品单价、购买数量以及收款金额计算并输出应收金额和找零 分析: ·定义输入——单价、数量、金额 ·定义输出——应收金额、找零 ·设计数据结构——多组表示单价和购买数量的变量

    Input:price、count、money

    Output:total、change

    Process:total = price * count

                     change = money - total

    分支结构 VS 三目/短路

    如果只是返回值——三目/短路

    如果操作复杂——分支结构

    (1)if-else

    (2)switch-case结构:根据不同的条件执行不同的代码段

    原理——用switch中的表达式的值和case中的值做“全等”比较

    知识点1:break

    它是停止当前结构的执行,并跳出当前结构

    知识点2:switch VS else if

    若“条件是全等比较”时,首选“switch-case”

    若需要灵活定义条件时,需要使用“else if”

    5、循环结构(3种)

    让程序反复执行一段代码段,达到临界条件,停止。

    3要素——循环条件、循环变量、循环体

    (1)while

    语法:

    var 循环变量 = 初值; while(循环条件){ 循环体; 迭代变化循环变量; }

    退出循环:2种方式

    a、自然退出:不满足循环条件时,自动退出循环

    b、手动退出:程序员在循环体使用break强行退出循环

    (2)do-while循环

    语法:

    var 循环变量 = 初值; do{ 循环体; 迭代变化循环变量; }while(循环变量); 总结:while和do-while区别

    当第一次条件满足时,while、do-while完全相同;

    当第一次条件不满足时。

    do-while:至少会执行一次

    while:一次都不执行

    注意——当条件第一次都不满足时,do-while也会执行一次。

    js中没有块级作用域,分支/循环结构出了结构照样使用。

    (3)for循环

    语法:

    var 循环变量 = 初值; for(循环变量;循环体判断;迭代变化循环变量;) ){ 循环体; }

    转载请注明原文地址: https://ju.6miu.com/read-665707.html

    最新回复(0)