[JS]函数

介绍

函数就是用来执行特点任务的代码块, 目的是实现代码复用, 提高开发效率

使用

1.0函数的声明
function 函数名 () {//函数体
}
2.0函数的调用

3.0命名规范
  1. 和变量命名规则基本一致
  2. 尽量小驼峰式命名
  3. 前缀应该为动词

传参

函数的参数可以极大提高函数的灵活性

1.0参数分类:

形参:形式参数,没有值,用来接收实参的值。

实参:实际参数,有值,用来给形参传递值。

2.0函数传参
// 声明一个有参数的函数
function( 形参1,形参2) {//函数体
} // 调用函数并传参
函数名(实参1,实参2)

注意:

  1. 在js中,如果有同名函数,后面的会覆盖前面的。
  2. 实参的个数可以和形参不一致:
  • 如果实参多余形参,多余的实参会被舍弃。
  • 如果形参多余实参,缺少的实参返回undefind。
  1. 实际开发中建议保持形参和实参一致
3.0默认参数

通过定义函数参数的默认值, 可以提高函数的健壮性

// 默认参数
function( 形参1 = 默认值) {//函数体
} 
  • 默认参数只会在缺少实参时生效
  • 函数参数缺少实参, 并且没有设置默认参数, 值就是undefined
  • 这也符合" 形参就是函数内部声明的变量 "观点, 变量声明不赋值就是undefined

返回值

函数的返回值可以进一步提高函数的扩展性, 使调用者可以拿到函数执行的结果

  1. 函数是否需要返回值, 要根据实际需求确定
  2. 函数中通过return关键字返回执行结果, 交给调用者使用
  3. 函数中只能有一个return, return之后的程序不再执行
  4. return只能返回一个值,可以通过数组或对象的方式,返回多个值。
  5. 函数的返回值默认是undefined

作用域

作用域决定代码生效的范围, JS把作用域划分为全局作用域和局部作用域, 这样做的目的是提高程序的可靠性,减少可能的代码冲突

  1. 全局作用域:
  • script标签内部
  • 独立的js文件
  1. 局部作用域:
  • 函数作用域(函数内部)
  • 块级作用域( { }范围内 )
  1. 只要是代码, 就至少存在一个作用域

作用域链

多个作用域相连就形成了作用域链, 作用域链决定变量生效的值, 变量的访问遵循就近原则, 先局部, 再全局

根据作用域不同, 变量分为全局变量和局部变量

  1. 全局变量: 可以在任何区域访问
  2. 局部变量: 只能在当前作用域内访

匿名函数

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

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

相关文章

【React】变量 useState

开发需要,随便学学react。上手第一天,感觉这个JS语法很怪,没有什么逻辑性,比较抽象。随便写写笔记。 跟着网上找的项目写写感觉这个项目还不错: 分享给码友 https://zh-hans.react.dev/learn/tutorial-tic-tac-toe 参…

PEI转染试剂哪个品牌好用?

在做细胞转染实验时,经常会有这样的疑问,我们应该选择PEI转染试剂还是脂质体转染试剂?PEI转染试剂哪个品牌好用?在了解这个问题之前,我们先看看细胞转染的背景。 近年来,随着许多与疾病和细胞过程相关的基因被确定为…

等保测评是什么?等保方案怎么做?

等保测评,全称为网络安全等级保护测评,是依据国家相关标准对信息系统进行安全性评估和测试,以确保其符合国家等级保护要求的一种活动。这项测评工作对于保障信息系统安全至关重要,尤其是在当前网络安全威胁日益严峻的背景下。下面…

内存问题调优-GC

1. 排查元空间内存溢出 : 在JVM中配置 -verbose:class 打印类加载信息。 什么条件触发GC-CMS为例 1. eden区满了?会不会触发GC? eden区满触发YGC,FGC会出发全代回收,即Eden区也会被回收2. 老年代满了会不会触发GC&a…

代码随想录训练营Day45

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 前言一、打家劫舍二、打家劫舍2三、打家劫舍3 前言 提示:这里可以添加本文要记录的大概内容: 今天是跟着代码随想录刷题的第45天&#xff…

XX公司-JAVA笔试题

一、单选题 某单位的会议室有5排共40个座位,每排座位数相同。小张和小李随机入座,则他们坐在同一排的概率()。 A、不高于 15% B、高于 15%但低于 20% C、正好为 20% D、高于 20% 先让小张随机入座,有40个座位可选&…

【大数据 复习】第9章 数据仓库分析工具Hive

一、概念 1.概述 (1)Hive是一个构建于Hadoop顶层的数据仓库工具。 (2)某种程度上可以看作是用户编程接口,本身不存储和处理数据。 (3)依赖分布式文件系统HDFS存储数据。 (4&#xf…

python - 变量和字符串

一.变量 变量名就像我们现实社会的名字,把一个值赋值给一个名字时,Ta会存储在内存中,称之为变量(variable),在大多数语言中,都把这种行为称为“给变量赋值”或“把值存储在变量中”。 •不过P…

赋能行业数字化转型——家居建材信息API合集

家居建材信息API的核心原理在于利用互联网技术,通过预先定义的接口规范,实现家居建材信息的共享与交互。API作为连接数据源和应用程序的桥梁,能够接收请求并返回相应的数据。 家居建材信息API具有以下几个方面特点: 数据标准化&…

快手可灵:上线图生视频和视频续写

上次介绍的快手的 Kling 大模型上线了新功能,其中图生视频支持将静态图像转化为生动的 5 秒视频,运动幅度比 Luma 低,但是非常稳定。视频续写则支持单次让视频运动延续 4.5 秒,支持连续多次的续写,最长可生成 3 分钟的…

族乐智能零火转单火套件零火智能开关单火模块零线生成器

族乐智能零火转单火套件零火智能开关单火模块零线生成器 史新华 族乐智能零火转单火套件,如同一位巧手匠人,将传统的零火智能开关巧妙地转化为更为灵活的单火模式。这款套件不仅体现了现代科技的精妙之处,更展现了对传统技术的深情致敬与巧…

第30讲:Ceph集群RBD块存储通过CSI客户端与K8S StorageClass集成

文章目录 1.Ceph集群使用CSI客户端与K8S StorageClass集成简介2.RBD块存储与StorageClass集成架构图3.Ceph集群为StorageClass提供块存储设备3.1.在Ceph集群中创建StorageClass使用的资源池3.2.创建K8S集群访问RBD块存储设备的认证用户3.3.获取Ceph集群的集群信息 4.在K8S集群中…

C语言—结构体

1.结构体类型的声明 结构是一些值的集合,这些值称为成员变量。结构的每个成员可以是不同类型的变量。 1.1结构的简单声明 struct xxx {member——list; }xxxxx; 例如:描述一本书 struct BOOK {char Book_Name[20];char autho…

面向卫星遥感的红外微小舰船目标检测方法:MTU-Net

论文简介 空间红外微小舰船检测旨在从地球轨道卫星所拍摄的图像中识别并分离出微小舰船。由于图像覆盖面积极其广大(如数千平方公里),这些图像中的候选目标相比空中或地面成像设备观测到的目标,尺寸更小、亮度更低且变化更多。现有…

mayavi pyqt 实例

目录 安装: 示例代码: 生成3d检测框: 显示立方体 两个窗口 安装: pip install vtk pip install mayavi pip install PyQt5 pip install pyqt5 mayavi traits traitsui 示例代码: import sys from PyQt5.QtWidg…

如何在Java中实现缓存机制?

如何在Java中实现缓存机制? 大家好,我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编,也是冬天不穿秋裤,天冷也要风度的程序猿!今天我们将深入探讨在Java应用程序中如何实现高效的缓存机制。缓存是提高…

温湿度采集及OLED显示

目录 软件I2C和硬件I2C每隔2秒钟采集一次温湿度数据,显示到OLED上,同时通过串口发送到上位机的“串口助手”软件 软件I2C和硬件I2C "I2C"代表Inter-Integrated Circuit,是一种用于在数字电路之间进行通信的串行通信协议。软件I2C和…

使用Testcontainers进行Java集成测试

在现代软件开发中,集成测试是确保应用程序与其依赖项(如数据库、消息队列等)正确交互的关键步骤。Testcontainers是一个支持JUnit测试的Java库,它提供了一个简单而强大的方式来创建和管理测试所需的任何Docker容器。本文将详细介绍…

【PythonWeb开发】Flask请求中传递参数到视图函数的方法总结。

在Flask中&#xff0c;传入参数主要有两种常见的方式&#xff0c;即通过GET请求和POST请求。 一、GET请求传递参数 &#xff08;1&#xff09;URL路径中获取 这种类型的参数通常称为路径参数或路由参数&#xff0c;它们是URL路径的一部分&#xff0c;通过尖括号<parameter…

CV每日论文--2024.6.21

1、An Image is Worth More Than 16x16 Patches: Exploring Transformers on Individual Pixels 中文标题&#xff1a;一张图像的价值超过 16x16 的补丁&#xff1a;在单个像素上探索 Transformers 简介&#xff1a;这项工作并非介绍一种新的方法&#xff0c;而是呈现了一项有…