2024年 前端JavaScript入门到精通 第四天 笔记

4.1 函数的基本使用以及封装练习

★ 函数命名规范

4.2 函数的参数以及默认参数

函数的灵魂!!!

4.3 函数封装数组求和案例

4.4 函数返回值return

4.5 函数返回值细节以及上午总结

4.6 函数返回值案例-求最大值和最

4.7 函数复习以及断点进入函数

4.8 作用域

4.9 变量的访问原则

4.10 匿名函数之函数表达式

4.11 匿名函数之立即执行函数

4.12 综合家例-封装计算时间函数

4.13 逻辑中断

4.14 转换为布尔型以及作业

客观题

PC端地址:https://ks.wjx.top/vm/mC2UvoL.aspx#

主观题

练习题1:

请看以下代码,并说出执行的流程~~~

function printfInput(content) { // 将用户输入的内容, 在页面中显示document.write(content)
}
let constr = prompt('请输入内容')
printfInput(constr)

练习题2:

目标:求和函数封装练习

要求:

  1. 封装函数, 名字为sum
  2. 功能: 根据传入的两个数,求和并且返回求和的结果(函数必须有return返回值)

练习题3:

目的:  封装函数, 复习函数的基本写法。

需求:实现两个数的值交换(函数版本)

分析:

  1. 函数名为 changeNum()
  2. 调用函数时,  changeNum(1,2)
  3. 经过函数内部处理后,输出  第一个值的结果是2 第二个值的结果是1
  4. 可以多调用两次

练习题4:

目的: 复习函数的声明与调用

题目:封装余额函数

要求:

  1. 运行程序后, 浏览器显示输入确认框(prompt)
  2. 第一个输入确认框提示输入银行卡余额
  3. 第二个输入确认框提示输入当月食宿消费金额
  4. 第三个输入确认框提示输入当月生活消费金额
  5. 输入完毕后,在页面中显示银行卡剩余金额
  6. 提示: 所有功能代码封装在函数内部(函数需要把余额返回)

练习题5:

目标: 封装一个函数,可以求任意数组的和 或 平均值

要求:

  • 函数可以传递2个参数,比如  handleData(arr, true)      handleData 处理数据的意思
    • 参数一: 接受实参传递过来的数组
    • 参数二:    布尔类型  如果是true或者不传递参数 是求和操作,   如果传递过来的参数是 false 则是求平均值

拓展题1

需求:  封装 some 函数查看数组是否存在某个元素  。

  • 要传递2个参数 元素、数组
  • 如果数组存在元素则返回true,如果没有存在元素就返回 false

例如检测 香蕉  是否存在于  数组['苹果', '香蕉', '橘子', '荔枝', '梨子']中, 返回结果是 true

格式如下:

 function some(ele, arr = []) {// 里面写业务逻辑}
let re = some('荔枝', ['苹果', '香蕉', '橘子', '荔枝', '梨子'])
console.log(re) // true
let re1 = some('榴莲', ['苹果', '香蕉', '橘子', '荔枝', '梨子'])
console.log(re1) // false

拓展题2

需求:  封装 findeIndex 函数返回查找元素在数组中的索引号。

  • 要传递2个参数 元素、数组
  • 如果找到,则返回查找元素在数组中的索引号,如果查找不到,则返回 -1

例如检测 香蕉    数组['苹果', '香蕉', '橘子', '荔枝', '梨子']中, 返回结果是  1

格式如下:

 <script>// 封装函数返回元素的下标  [1, 5, 10, 22, 8, 7]// 1. 封装函数 findIndex,传递2个参数 元素、数组function findIndex(ele, arr = []) {// 里面写业务逻辑}let index1 = findIndex(10, [1, 5, 10, 22, 8, 7])console.log(index1) // 2let index2 = findIndex(8, [1, 5, 10, 22, 8, 7])console.log(index2) // 4let index3 = findIndex(88, [1, 5, 10, 22, 8, 7])console.log(index3) // -1</script>

排错题

排错题1

<!-- bug:请你找到代码返回NaN的原因,并进行修改 -->
<body><script>// 请返回一个数字型的结果 可以使用默认参数或者逻辑中断都可以function fn(x, y) {console.log(x + y)}fn(1)</script>
</body>

排错题2

<!-- bug:请你找到下面代码的2处错误,并进行修改过来-->
<body><script>// 任意数组求和案例function getsumArr(arr) {let sum = 0for (let i = 0; i < arr.legnth; i++) {sum + arr[i]}return sum}console.log(getsumArr([10, 20, 30, 40]))</script>
</body>

-----底部---

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

《TCP/IP详解 卷一》第3章 链路层

目录 3.1 引言 3.2 以太网 3.3 全双工 省点 自动协商 流量控制 3.4 网桥和交换机 3.5 WiFi 3.6 PPP协议 3.6.1 PPP协议流程 3.7 环回 3.8 MTU和路径MTU 3.9 隧道基础 3.9.1 GRE 3.9.2 PPTP 3.9.3 L2TP 3.10 与链路层相关的攻击 3.11 总结 3.1 引言 城域网&…

【视频编码\VVC】环路滤波基础知识

本文为新一代通用视频编码H.266\VVC原理、标准与实现的简化笔记。 定义&#xff1a;在视频编码过程中进行滤波&#xff0c;滤波后的图像用于后续编码。 目的&#xff1a;1、提升编码图像的质量。2、为后续编码图像提供高质量参考&#xff0c;获得更好的预测效果。 VVC中主要…

RabbitMQ的死信队列和延迟队列

文章目录 死信队列如何配置死信队列死信队列的应用场景Spring Boot实现RabbitMQ的死信队列 延迟队列方案优劣&#xff1a;延迟队列的实现有两种方式&#xff1a; 死信队列 1&#xff09;“死信”是RabbitMQ中的一种消息机制。 2&#xff09;消息变成死信&#xff0c;可能是由于…

RuntimeError: CUDNN_STATUS_EXECUTION_FAILED

问题描述&#xff1a; 运行代码时候报错&#xff1a; 原因&#xff1a;pytorch与cuda版本不对&#xff0c;需要重新安装。不过我在复现代码的时候一般是要求特定的环境&#xff0c;不然会有其他错误&#xff0c;所以选择其他解决办法。 解决方案&#xff1a; 在train.py开头…

跨界计算与控制,强化显控和UI, 君正MPU再添新旗舰--Ingenic MPU X2600隆重发布

近日&#xff0c;北京君正隆重发布MPU芯片新产品X2600。该产品以商业和工业应用的数个细分领域为重点目标市场&#xff0c;兼顾通用处理器应用需求。无论从CPU结构的设计&#xff0c;还是专门控制器和接口的配备&#xff0c;都体现了北京君正MPU团队“技术路线上追求自主跨界&a…

鸿蒙开发之Profiler性能分析

一、Profiler性能分析器简介 应用或服务的性能较差时,可能表现为响应速度慢、动画播放不流畅、卡顿、崩溃或极其耗电。为了避免出现这些性能问题,需要通过一系列性能分析工具来确定应用或服务对哪方面资源(例如CPU、内存、显卡、网络和设备电池)的使用率比较高。DevEco St…

代码随想录算法训练营day25|216.组合总和III

216.组合总和III 题目链接/文章讲解&#xff1a;代码随想录 视频讲解&#xff1a;和组合问题有啥区别&#xff1f;回溯算法如何剪枝&#xff1f;| LeetCode&#xff1a;216.组合总和III_哔哩哔哩_bilibili 跟77题差不多&#xff0c;要搞清楚k确定了递归的深度 依旧用回溯三部…

Facebook的数字社交使命:连接世界的下一步

在数字化时代&#xff0c;社交媒体已成为人们生活的重要组成部分&#xff0c;而Facebook作为其中最具影响力的平台之一&#xff0c;一直以来都在努力履行着自己的使命——连接世界。然而&#xff0c;随着时代的变迁和技术的发展&#xff0c;Facebook正在不断探索着连接世界的下…

【Logback】Logback 日志框架的架构

目录 1、Logger&#xff08;记录器&#xff09; &#xff08;1&#xff09;有效级别和级别继承 &#xff08;2&#xff09;日志打印和日志筛选 &#xff08;3&#xff09;记录器命名 2、Appenders&#xff08;追加器&#xff09; 3、Layouts&#xff08;布局&#xff09;…

提示工程(Prompt Engineering)、微调(Fine-tuning) 和 嵌入(Embedding)

主要参考资料&#xff1a; 还没搞懂嵌入&#xff08;Embedding&#xff09;、微调&#xff08;Fine-tuning&#xff09;和提示工程&#xff08;Prompt Engineering&#xff09;&#xff1f;: https://blog.csdn.net/DynmicResource/article/details/133638079 B站Up主Nenly同学…

智能高压森林应急消防泵|保障森林安全|深圳恒峰

随着科技的不断发展&#xff0c;我们的生活质量得到了显著提升。在森林保护领域&#xff0c;一项创新技术正在发挥着关键作用——智能高压森林应急消防泵。这种设备不仅提高了灭火效率&#xff0c;更为森林资源的安全保驾护航。 在过去&#xff0c;面对森林火灾&#xff0c;消防…

学习Python分支结构不走弯路

1.单分支语句 """ 语法&#xff1a; if 表达式:执行语句 执行流程&#xff1a;当表达式成立的时候&#xff0c;执行语句&#xff0c;否则不执行 """age int(input(请输入你的年龄&#xff1a;)) if age > 18:print(欢迎光临&#xff01;) …

PyTorch基础:Tensor类型张量的构建与相互转换

PyTorch基础&#xff1a;Tensor类型张量的构建与相互转换 &#x1f308; 个人主页&#xff1a;高斯小哥 &#x1f525; 高质量专栏&#xff1a;Matplotlib之旅&#xff1a;零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程 &#x1f448; 希望得到您的订…

【Java】Java基础(实验一)

目录 一、实验目的 二、实验内容 三、实验小结 一、实验目的 掌握Java程序的编辑、调试与运行&#xff1b;了解Java引用类型&#xff0c;掌握数组的定义和引用。掌握Java基本数据类型和输入输出。掌握Java程序结构 二、实验内容 1.JDK的环境变量设置及测试。 &#xff08…

2023年12月CCF-GESP编程能力等级认证C++编程六级真题解析

一、单选题(共15题,共30分) 第1题 关于C++类和对象的说法,错误的是( )。 A:在C++中,一切皆对象,即便是字面量如整数5等也是对象 B:在C++中,可以自定义新的类,并实例化为新的对象 C:在C++中,内置函数和自定义函数,都是类或者对象 D:在C++中,可以在自定义函数中…

fly-barrage 前端弹幕库(1):项目介绍

fly-barrage 是我写的一个前端弹幕库&#xff0c;由于经常在 Bilibili 上看视频&#xff0c;所以对网页的弹幕功能一直蛮感兴趣的&#xff0c;所以做了这个库&#xff0c;可以帮助前端快速的实现弹幕功能。 项目官网地址&#xff1a;https://fly-barrage.netlify.app/&#xff…

c++获取本地所有IP地址,以及域名解析

#include <iostream> using namespace std; #define _WINSOCK_DEPRECATED_NO_WARNINGS #include <WinSock2.h> #pragma comment(lib,"WS2_32.lib")class CInitSock { public:CInitSock(){//必须要注册网络库WSADATA wsd;if (::WSAStartup(MAKEWORD(2, 2)…

【k8s资源调度-Deployment】

1、标签和选择器 1.1 标签Label 配置文件&#xff1a;在各类资源的sepc.metadata.label 中进行配置通过kubectl 命令行创建修改标签&#xff0c;语法如下 创建临时label&#xff1a;kubectl label po <资源名称> apphello -n <命令空间&#xff08;可不加&#xff0…

【SpringBoot】Spring常用注解总结

目录 ⭐spring springmvc和springboot的区别 Autowired 和Resource的区别和联系 1. SpringBootApplication 2. Spring Bean 相关 2.1. Autowired 2.2. Component,Repository,Service, Controller 2.3. RestController 2.4. Scope 2.5. Configuration 3. 处理常见的 HT…

CentOS和Ubuntu之间的区别和联系

CentOS&#xff08;Community ENTerprise Operating System&#xff09;和Ubuntu是两种流行的Linux发行版&#xff0c;它们在企业和个人用户中都有广泛的应用。尽管它们都是基于Linux内核&#xff0c;但它们在设计理念、更新策略、包管理系统等方面存在一些关键的区别和联系。下…