Web前端第四次作业

目录

一、编写一个函数,形参是一个数组,返回数组中所有数字的平均值

二、编写一个函数,形参是一个数组,返回数组中的最大值

三、编写一个函数,形参是一个字符串,统计该字符串中每个字母出现的次数,并以对象形式返回


一、编写一个函数,形参是一个数组,返回数组中所有数字的平均值

代码:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            // 定义一个函数用于计算数组的平均值
            function calculateAverage(arr) {
                // 初始化变量sum,用于存储数组元素的总和
                let sum = 0;
                
                // 使用for...of循环遍历数组中的每一个元素
                for (let num of arr) {
                    // 将当前元素的值累加到sum变量中
                    sum += num;
                }
                
                // 计算平均值,即总和除以数组的长度
                let avg = sum / arr.length;
                
                // 返回计算出的平均值
                return avg;
            }

            // 定义一个数组
            let array = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
            
            // 调用calculateAverage函数计算数组的平均值
            let result = calculateAverage(array);
            
            // 将计算结果输出到控制台
            console.log(result);  // 输出:5.5
        </script>
    </body>
</html>

结果:

二、编写一个函数,形参是一个数组,返回数组中的最大值

代码:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            // 定义一个数组
            let arr = [5, 3, 6, 8, 9, 10, 20];

            // 定义一个函数用于找到数组中的最大值
            function getMax(arr) {
                // 将数组的第一个元素初始化为最大值
                let max = arr[0];
                
                // 使用for循环遍历数组,从第二个元素开始
                for (let i = 1; i < arr.length; i++) {
                    // 如果当前元素比max大,则更新max为当前元素
                    if (max < arr[i]) {
                        max = arr[i];
                    }
                }
                
                // 返回找到的最大值
                return max;
            }

            // 调用getMax函数并将结果输出到控制台
            console.log(getMax(arr));  // 输出:20
        </script>
    </body>
</html>

结果:

三、编写一个函数,形参是一个字符串,统计该字符串中每个字母出现的次数,并以对象形式返回

代码:

html 复制代码
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script>
            // 定义一个函数,用于统计字符串中每个字母出现的次数
            function countLetters(str) {
                // 创建一个空对象用于存储字母出现的次数
                let letterCount = {};
                
                // 遍历字符串中的每个字符
                for (let char of str) {
                    // 检查字符是否是字母
                    if (char.match(/[a-zA-Z]/)) {
                        // 将字母转换为小写,以便不区分大小写
                        char = char.toLowerCase();
                        
                        // 如果字母已经在对象中,则增加其计数
                        // 否则,将其添加到对象中,初始计数为1
                        letterCount[char] = (letterCount[char] || 0) + 1;
                    }
                }
                
                // 返回字母计数对象
                return letterCount;
            }

            // 测试函数
            let testString = "Hello, World!";
            let result = countLetters(testString);
            console.log(result);  // 输出:{ h: 1, e: 1, l: 3, o: 2, w: 1, r: 1, d: 1 }
        </script>
    </body>
</html>

结果:

相关推荐
往事随风灬9 分钟前
我被 Volta 的“智能”坑了一下午:pnpm 为何无视项目 Node 版本?
前端·vue.js
xiaofeichaichai13 分钟前
Tree Shaking
前端·javascript
lichenyang45313 分钟前
给 ArkTS 应用做一个内置的「Network 面板」:实时看清 SSE 每一帧和最后那张卡片
前端
倾颜16 分钟前
从手写 Runner 到 LangGraph:受控 Agent 接入 LangGraph
前端·后端·langchain
UXbot24 分钟前
AI网页开发工具能替代工具吗?5大平台对比
前端·人工智能·低代码·ui·原型模式·web app
wuhen_n26 分钟前
从零到一!前端搭建本地轻量化 RAG 问答系统
前端·langchain·ai编程
落日漫游43 分钟前
代码报错难排查?借助Gemini快速修复
前端
niconicoC43 分钟前
让 Three.js 场景更真实:我用高斯泼溅和 SparkJS 做了一个可交互的 3D Demo
前端·webgl
Darling噜啦啦1 小时前
JavaScript 数组深度解析:从纯函数到二维数组陷阱,一文吃透前端数据结构核心
前端·javascript·数据结构
万少1 小时前
一封邮件,让我重新打开了搁置半年的鸿蒙应用
前端·javascript·后端