JavaScript的第四天

目录

一、数组的使用(Array)

        数组:将一组数据存储在单个变量下的一个集合。

        1、创建数组的方法:

                (1)声明一个变量,将一个集合赋值给一个变量,该方法较为便捷简单,使用较多

                (2)声明一个变量,使用关键字new来调用一个构造函数的Array来创建一个新的数组实例。

        2、数组的索引方法(index具有索引的意思)

        3、数组的长度计算(数组元素的数量)

        4、遍历数组

         (1)使用for循环遍历数组,将数组的元素按照特定的顺序进行访问。

        (2)代码解析

 二、函数

        1、函数的使用分为两步:声明函数和调用函数

        2、函数的形参和实参

        3、函数的返回值(return)

                (1)将return添加在函数体的最后来返回函数的结果

                (2)具体格式

                (3)函数返回值的注意事项

        4、一些基础案例

三、一些补充的数组内容

        1、数组的API(用于操作和处理数组)

     

          2、冒泡排序


一、数组的使用(Array)

        数组:将一组数据存储在单个变量下的一个集合。

        1、创建数组的方法:

        数组内数据被称为数组元素,而数组元素之间需要使用逗号隔开。

        数组元素可包含的具体数据类型如下:

        1. 基本数据类型

  • 字符串(String):如"Hello"

  • 数字(Number):如423.14

  • 布尔值(Boolean):如truefalse

  • 空值(Null):表示一个空值或不存在的对象。

  • 未定义(Undefined):表示变量已声明但未赋值。

        2. 复杂数据类型

  • 对象(Object):如{name: "Alice", age: 25}

  • 数组(Array):如[1, 2, [3, 4]],数组中还可以嵌套其他数组。

  • 函数(Function):如function() { console.log("Hello"); }

        3. 特殊值

  • NaN(Not-a-Number):表示不是一个数字的值。

  • Infinity:表示无穷大。

  • -Infinity:表示负无穷大。

        4. Symbol(ES6新增)

  • Symbol:表示唯一的、不可变的原始值,通常用作对象属性的键。

                (1)声明一个变量,将一个集合赋值给一个变量,该方法较为便捷简单,使用较多
        var arr=[1,2,3,4]
                (2)声明一个变量,使用关键字new来调用一个构造函数的Array来创建一个新的数组实例。
        var arr = new Array(1, 2, 3)

    //使用var关键字进行声明,具有全局作用域。

    //使用关键字new调用Array构造函数,接受参数1,2,3作为所构建的数组的初始元素
    //声明一个变量,并通过等号将数组赋值给这个变量
    //即在这个式子中,arr变量可以引用一个包含了三个元素的数组

        2、数组的索引方法(index具有索引的意思)

                注:索引的值需要从0开始,不会因为数组元素的改变而改变索引顺序

        数组名(变量名) [索引号]

        //创建一个数组
        
        var arr=[1,2,3,4,5]
        //这个数组中的索引号从0开始,即数组第一个数组元素1的索引号为0,以此类推
        //超出数组索引号的索引值所返回的结果为 undefined

        3、数组的长度计算(数组元素的数量)

                1、数组的长度为数组元素的数量,而不是索引号,数组长度 > 索引号

                2、使用 数组名.length 可以动态监测数组的元素个数

    //创建一个数组
    var arr = [1,2,3,4]

    //使用数组长度对数组的元素数量进行检测,并使用控制台打印进行输出
    console.log(arr.length);

        4、遍历数组

遍历:

        在JavaScript中,遍历(Traversal)指的是按照某种顺序访问集合(如数组、对象等)中的每一个元素,并对每个元素执行特定的操作。遍历是处理数据集合的一种基本方式,它允许我们逐个检查、修改或处理集合中的元素。

        遍历的主要目的是:

        1. 访问元素:获取集合中每个元素的值或引用。

        2. 执行操作:对集合中的每个元素执行某种计算、修改或处理。

        3. 收集结果:将遍历过程中得到的结果存储起来,以便后续使用。

遍历的方式有多种,具体取决于要遍历的集合类型和需求。

         (1)使用for循环遍历数组,将数组的元素按照特定的顺序进行访问。

                在选择不同的顺序时,需注意设置for循环中的初始化变量,并完成条件的设置。按照正反顺序选择合适的后置递增。

       

        (2)代码解析

                在使用for循环时,我们的初始化变量作为计数器使用,在下列代码中i作为计数器进行使用,追踪当前正在处理的数组元素的索引。

        具体来说,i的作用包括:

        1. 索引访问arr[i]表示数组中第i个元素的值,其中i从0开始计数。

        2. 循环控制i < arr.length是循环的条件,确保i的值不会超出数组的有效索引范围。

        3. 迭代更新i++在每次循环结束时执行,将i的值增加1,以便在下一次迭代中处理下一个元素。

        通过这种方式,i帮助我们按顺序遍历数组中的每个元素,通过arr[i],我们可以访问并处理数组中索引为i的元素。

        var arr = [1, 3, 5, 7, 9, 1, 2, 8, 3, 4]
        for (var i = 0; i < arr.length; i++) {
            console.log(arr[i]);
        }

    //在这个例子中,我们首先定义了一个名为arr的数组,然后使用for循环遍历数组中的每个元素。
    //循环变量i从0开始,每次循环递增1,直到达到数组的长度。
    //在循环体内,我们使用console.log(arr[i])输出数组中的每个元素,并按照顺序打印在控制台上。

 二、函数

(函数就是封装了一段可以被重复执行调用的代码块,目的就是让大量代码重复使用,通过函数来封装一段代码进行使用)        

//使用function来命名函数

            function 函数名(形参) 
                {
                    函数体
                 }
    

        1、函数的使用分为两步:声明函数和调用函数

                (1)使用function关键字声明函数,需全部小写

                (2)函数是用来运行代码的,在不调用函数的情况下,本身不执行

                (3)调用函数时间需添加小括号

        2、函数的形参和实参

        // function 函数名(形参1,形参2...) 
        // { 在声明函数的小括号里面是 形参 (形式上的参数)}

        // 函数名(实参1,实参2...); 

        // 在函数声明时小括号里面的形参
        // 在函数调用的小括号里面是实参(实际的参数)
        // 形参是在函数声明时进行计算的仅限于函数体内的变量

        function fn(a, b, c) {
            console.log(a, b, c);
        }
        fn(1, 2, 3)

                (1)如果实参的个数和形参的个数一致 则正常输出结果

                (2)如果实参的个数多于形参的个数  会取到形参的个数

                (3)如果实参的个数小于形参的个数  多于的形参定义为undefined

        3、函数的返回值(return)

                (1)将return添加在函数体的最后来返回函数的结果
                (2)具体格式
        function 函数名() {
                函数体

        return 需要返回的结果;
        }
         函数名();


        // (1) 我们函数只是实现某种功能,最终的结果需要返回给函数的调用者函数名() 
        //    通过return 实现的

        // (2) 只要函数遇到return 就把后面的结果 返回给函数的调用者  
        //    函数名() = return后面的结果

                

                (3)函数返回值的注意事项

                1. return 终止函数 ,return 后面的代码不会被执行

                2. return 只能返回一个值 ,返回的结果是最后一个值

                3.  我们求任意两个数的 加减乘除结果  返回值可以是任意数据类型

                4. 我们的函数如果有return 则返回的是 return 后面的值,如果函数没有 return 则返回undefined

        4、一些基础案例

        

        // 利用函数求数组 [5,2,99,101,67,77] 中的最大数值。

        // getArrMax([5, 2, 99, 101, 67, 77]); // 实参是一个数组送过去
        // 在我们实际开发里面,我们经常用一个变量来接受 函数的返回结果 使用更简单

        var arr = [5, 2, 99, 101, 67, 77]
        function fn(arr) {
            var max = arr[0]
            for (var i = 1; i < arr.length; i++) {
                if (max < arr[i]) max = arr[i]
            }
            return max
        }

        console.log(fn(arr));
        console.log(fn([1, 3, 5, 29]));







        // 利用函数 求两个数的最大值
        function fn(a, b) {
            var max = a > b ? a : b
            return max
        }

        console.log(fn(2, 6));

三、一些补充的数组内容

        1、数组的API(用于操作和处理数组)

        

.push()

在数组的末尾,添加一个数组成员

.unshift()

在数组的开头,添加一个数组成员

.pop()

在数组的末尾,移除一个数组成员

.shift()

在数组的开头 移除一个数组成员

.concat(temp)

连接两个数组

.join("")  

把数组成员连接成一个字符串,默认逗号分隔,可以在引号内添加其他的分隔符号
.toString()把数组成员连接成一个字符串,默认以逗号分隔

.splice(2,1)  

在指定位置 删除指定数量的数组成员,改变原数组, 第一个参数为索引,第二个参数为数量

.slice(2, 5)

在指定位置 截取指定数量的数组成员,截取区间左闭右开

.sort()

默认ASCII码进行从小到大排序

.reverse()

将数组顺序进行翻转

     

          2、冒泡排序

                将数组从小到大排序

        var arr = [1, 23, 11, 32, 7, 5, 3, 41];  
        //升序1,3,5,7,11,23,32,41

        for (var i = 0; i < arr.length - 1; i++) {
            for (var j = 0; j < arr.length - 1 - i; j++) {
                if (arr[j] > arr[j + 1]) {
                    var temp = arr[j]
                    arr[j] = arr[j + 1]
                    arr[j + 1] = temp
                }
            }
        }
        console.log(arr);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值