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>

结果:

相关推荐
Aniugel6 分钟前
单点登录(SSO)系统
前端
鹏多多10 分钟前
移动端H5项目,还需要react-fastclick解决300ms点击延迟吗?
前端·javascript·react.js
serioyaoyao11 分钟前
上万级文件一起可视化,怎么办?答案是基于 ParaView 的远程可视化
前端
万少17 分钟前
端云一体 一天开发的元服务-奇趣故事匣经验分享
前端·ai编程·harmonyos
WindrunnerMax19 分钟前
从零实现富文本编辑器#11-Immutable状态维护与增量渲染
前端·架构·前端框架
不想秃头的程序员21 分钟前
Vue3 封装 Axios 实战:从基础到生产级,新手也能秒上手
前端·javascript·面试
数研小生35 分钟前
亚马逊商品列表API详解
前端·数据库·python·pandas
你听得到1136 分钟前
我彻底搞懂了 SSE,原来流式响应效果还能这么玩的?(附 JS/Dart 双端实战)
前端·面试·github
不倒翁玩偶37 分钟前
npm : 无法将“npm”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
前端·npm·node.js