JavaScript练习题第(四)部分

 

 

大家好关于JavaScript基础知识点已经发布:需要的大家可以去我的主要查看

(当然了有任何不会的,可以私信我!!!!)

为了巩固大家学习知识点给大家准备几道练习题:

当然,以下是10道质量较高的JavaScript函数知识点练习题:

1. 编写一个函数,接收一个字符串参数,判断该字符串是否为回文字符串(正读和反读都相同)。

2. 编写一个函数,接收一个参数n,计算并返回斐波那契数列中第n个数字。

3. 编写一个函数,接收一个数组作为参数,返回数组中的最大值。

4. 编写一个函数,接收一个字符串参数,统计该字符串中每个字母出现的次数,并以对象形式返回。

5. 编写一个函数,接收两个参数,返回这两个参数的最大公约数。

6. 编写一个函数,接收一个数组作为参数,将数组中的元素去重,并返回新的数组。

7. 编写一个函数,接收一个正整数参数n,返回n的阶乘。

8. 编写一个函数,接收一个字符串参数,将字符串中的单词首字母大写,并返回结果字符串。

9. 编写一个函数,接收一个数组作为参数,返回数组中所有数字的平均值。

10. 编写一个函数,接收一个字符串参数,判断该字符串是否为有效的手机号码(满足特定的格式要求)。

这些练习题涵盖了字符串操作、数组操作、数学计算等常见的JavaScript函数知识点,希望对你有帮助!

 

当然,以下是10道质量较高的JavaScript函数知识点练习题,并带有详细注释:

  1. 编写一个函数,接收一个字符串参数,判断该字符串是否为回文字符串(正读和反读都相同)。
function isPalindrome(str) {// 将字符串反转const reverseStr = str.split('').reverse().join('');// 判断反转后的字符串是否与原字符串相同if (str === reverseStr) {return true;} else {return false;}
}

  1. 编写一个函数,接收一个参数n,计算并返回斐波那契数列中第n个数字。
function fibonacci(n) {// 定义初始的前两个斐波那契数let num1 = 0;let num2 = 1;let sum;// 计算斐波那契数列中的第n个数字for (let i = 2; i <= n; i++) {sum = num1 + num2;num1 = num2;num2 = sum;}return num2;
}

  1. 编写一个函数,接收一个数组作为参数,返回数组中的最大值。
function findMax(arr) {// 定义初始的最大值为数组的第一个元素let max = arr[0];// 遍历数组,找到最大值for (let i = 1; i < arr.length; i++) {if (arr[i] > max) {max = arr[i];}}return max;
}

  1. 编写一个函数,接收一个字符串参数,统计该字符串中每个字母出现的次数,并以对象形式返回。
function countLetters(str) {// 创建一个空的对象用于存储字母及其对应的出现次数const count = {};// 遍历字符串,统计字母出现的次数for (let i = 0; i < str.length; i++) {const letter = str[i];if (count[letter]) {// 如果字母已经存在于对象中,则次数加1count[letter]++;} else {// 如果字母尚未存在于对象中,则添加该字母,并将次数设置为1count[letter] = 1;}}return count;
}

  1. 编写一个函数,接收两个参数,返回这两个参数的最大公约数。
function findGCD(a, b) {// 辗转相除法求最大公约数while (b !== 0) {const remainder = a % b;a = b;b = remainder;}return a;
}

  1. 编写一个函数,接收一个数组作为参数,将数组中的元素去重,并返回新的数组。
function removeDuplicates(arr) {// 使用Set数据结构去除重复元素,并通过展开运算符将Set转换为数组return [...new Set(arr)];
}

  1. 编写一个函数,接收一个正整数参数n,返回n的阶乘。
function factorial(n) {if (n === 0 || n === 1) {// 当n为0或1时,返回1return 1;}let result = 1;// 计算阶乘for (let i = 2; i <= n; i++) {result *= i;}return result;
}

  1. 编写一个函数,接收一个字符串参数,将字符串中的单词首字母大写,并返回结果字符串。
function capitalizeWords(str) {// 分割字符串为单词数组const words = str.split(' ');// 将每个单词的首字母大写,并将其余字母转换为小写const capitalizedWords = words.map(word => {return word.charAt(0).toUpperCase() + word.slice(1).toLowerCase();});// 组合单词为字符串const result = capitalizedWords.join(' ');return result;
}

  1. 编写一个函数,接收一个数组作为参数,返回数组中所有数字的平均值。
function calculateAverage(arr) {// 使用reduce函数求和const sum = arr.reduce((acc, num) => acc + num, 0);// 计算平均值const average = sum / arr.length;return average;
}

  1. 编写一个函数,接收一个字符串参数,判断该字符串是否为有效的手机号码(满足特定的格式要求)。
function isValidPhoneNumber(phoneNumber) {// 使用正则表达式判断字符串是否满足手机号码格式要求const regex = /^\d{11}$/;return regex.test(phoneNumber);
}

希望这些解答能帮助到您!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/582525.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

网络编程『简易TCP网络程序』

&#x1f52d;个人主页&#xff1a; 北 海 &#x1f6dc;所属专栏&#xff1a; Linux学习之旅、神奇的网络世界 &#x1f4bb;操作环境&#xff1a; CentOS 7.6 阿里云远程服务器 文章目录 &#x1f324;️前言&#x1f326;️正文TCP网络程序1.字符串回响1.1.核心功能1.2.程序…

CGAL的D维包围盒相交计算

包围盒相交测试是一种用于快速判断两个三维对象是否相交的方法&#xff0c;而AABB树则是一种数据结构&#xff0c;常用于加速场景中的射线检测和碰撞检测。 首先&#xff0c;让我们了解一下包围盒相交测试。这种测试的目的是为了快速判断两个三维对象是否相交&#xff0c;而不需…

同化的题解

时间限制: 1000ms 空间限制: 524288kB 题目描述 古人云&#xff1a;“近朱者赤近墨者黑”。这句话是很有道理的。这不鱼大大和一群苦命打工仔被安排进厂拧螺丝了。 进厂第一天&#xff0c;每个人拧螺丝的动力k都是不同且十分高涨的。但是当大家坐在一起后会聊天偷懒&#xf…

在微服务中如何实现全链路的金丝雀发布?

目录 1. 什么金丝雀发布&#xff1f;它有什么用&#xff1f; 2.如何实现全链路的金丝雀发布 2.1 负载均衡模块 2.2 网关模块 2.3 服务模块 2.3.1 注册为灰色服务实例 2.3.2 设置负载均衡器 2.3.3 传递灰度发布标签 2.4 其他代码 2.4.1 其他业务代码 2.4.2 pom.xml 关…

CSS 向上扩展动画

上干货 <template><!-- mouseenter"startAnimation" 表示在鼠标进入元素时触发 startAnimation 方法。mouseleave"stopAnimation" 表示在鼠标离开元素时触发 stopAnimation 方法。 --><!-- 容器元素 --><div class"container&q…

SAP VA01 创建带wbs号的销售订单包 CJ067的错误

接口错误提示如下 SAP官方 CJ067 124177 - VA01: CJ067 during WBS acct assgmt with a different business area S4的core 刚好能用上 实施 这个note后成功

引力魔方的操作知识

引力魔方的一些操作以及问题如图所示&#xff1a; 主要包含以下内容&#xff1a; 1.如何搭建计划&#xff1f; 2.创意素材说明&#xff1b; 3.如何出价&#xff1f; 4.如何提高引力魔方点击率&#xff1f; 5.如何优化定向和溢价&#xff1b; 6.冷启动&#xff1a;计划开…

基于WEB的网上购物系统的设计与实现(附:源码 论文 sql文件)

摘 要 随着计算机网络技术的飞速发展和人们生活节奏的不断加快&#xff0c;电子商务技术已经逐渐融入了人们的日常生活当中&#xff0c;网上商城作为电子商务最普遍的一种形式&#xff0c;已被大众逐渐接受。因此开发一个网上商城系统&#xff0c;适合当今形势&#xff0c;更加…

DRF从入门到精通六(排序组件、过滤组件、分页组件、异常处理)

文章目录 一、排序组件继承GenericAPIView使用DRF内置排序组件继承APIView编写排序 二、过滤组件继承GenericAPIView使用DRF内置过滤器实现过滤使用第三方模块django-filter实现and关系的过滤自定制过滤类排序搭配过滤使用 三、分页组件分页器一&#xff1a;Pagination&#xf…

【JavaScript】闭包机制

✨ 专栏介绍 在现代Web开发中&#xff0c;JavaScript已经成为了不可或缺的一部分。它不仅可以为网页增加交互性和动态性&#xff0c;还可以在后端开发中使用Node.js构建高效的服务器端应用程序。作为一种灵活且易学的脚本语言&#xff0c;JavaScript具有广泛的应用场景&#x…

java设计模式学习之【解释器模式】

文章目录 引言解释器模式简介定义与用途实现方式 使用场景优势与劣势在Spring框架中的应用表达式解析示例代码地址 引言 在我们的日常生活中&#xff0c;语言的翻译和理解是沟通的关键。每种语言都有自己的语法规则&#xff0c;而翻译人员和计算机程序需要理解并遵循这些规则来…

手写Promise

目录 前言 状态 使用方法 构造函数 对象 结论 第一阶段 搭建基本结构 思路 代码实现 测试一下 实现then方法获取异步值 思路 改造代码如下 测试一下 成功场景 失败场景 实现类的resolve,reject以及catch方法 思路 代码实现 测试一下 第一阶段总结 第二阶…

《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识(11)

接前一篇文章&#xff1a;《PCI Express体系结构导读》随记 —— 第I篇 第1章 PCI总线的基本知识&#xff08;10&#xff09; 1.3 PCI总线的存储器读写总线事务 1.3.2 Posted和Non-Posted传送方式 PCI总线规定了两类数据传送方式&#xff0c;分别是Posted和Non-Posted数据传送…

关于Redis面试题

前言 之前为了准备面试&#xff0c;收集整理了一些面试题。 本篇文章更新时间2023年12月27日。 最新的内容可以看我的原文&#xff1a;https://www.yuque.com/wfzx/ninzck/cbf0cxkrr6s1kniv Redis 是什么 全名&#xff1a;远程字典服务。这是一个开源的在内存中的数据结构存…

硅像素传感器文献调研(二)

写在前面&#xff1a;从上篇文章的参考文献中看到一篇文献&#xff0c;现在也精读一下&#xff0c;今天还有一个任务是把上篇文献整体脉络用流程图的形式完整梳理一下。 哈哈哈哈哈哈&#xff1a;代表没太搞明白的部分 如何写论文&#xff1a; 引言部分&#xff1a;基础理论…

Python入门知识点分享——(十一)if条件语句

if条件语句是一种编程语言中用于控制程序流程的结构。它根据一个条件的真假来决定执行不同的代码块。 if条件语句通常由if关键字、一个条件表达式和一个代码块组成。条件表达式可以是一个返回布尔值的表达式&#xff0c;如果条件为真&#xff0c;则执行代码块中的代码&#xf…

01_软件测试

01_软件测试 学习目标 1、能复述软件测试的定义 2、能说出7种测试分类的区别 3、能说出质量模型的重点5项 4、能说出测试流程的6个步骤 5、能说出测试模板8个要素 认识软件及测试 什么是软件 软件&#xff1a;控制计算机硬件工作的工具 软件的基本组成 软件生产过程 什么是软…

vue多条数据渲染(带图片)

我在这用的为接口数据&#xff1a; 先调用接口获取需要的数据: 然后用&#xff1a;data绑定需要渲染的数据&#xff1b;&#xff08;记得包裹在<el-table>标签中&#xff09; 然后以此循环渲染数据&#xff1b;那怎么渲染出来图片呢&#xff1f; 在<el-table-column…

Vue3-25-路由-路由的基本使用

对路由的理解 路由 &#xff1a; 就是前端对页面路径的拦截&#xff0c;根据不同的路径渲染不同的组件&#xff0c; 从而实现单页应用中的页面局部刷新的功能。安装路由依赖 根据使用的不同的包管理工具采用不同的命令&#xff0c; 常见的三种包管理工具和对应的命令如下&…

day44 1228

作业1&#xff1a; #include <iostream>using namespace std;class Person {int *age;string &name; public:Person(int age,string &name):age(new int(age)),name(name){cout << "Person的构造函数" <<endl;}~Person(){delete age;cout…