【JavaScript函数】

news2025/1/15 19:37:45

JavaScript函数

  • 1 本节目标
  • 2 函数的概念
  • 3 函数的使用
    • 3.1 声明函数
    • 3.2 调用函数
    • 3.3 函数的封装
  • 4 函数的参数
    • 4.1 形参和实参
    • 4.2 执行过程
    • 4.3 注意点
    • 4.4 函数形参和实参个数不匹配问题
  • 5 函数的返回值
    • 5.1 return语句
    • 5.2 函数返回值注意事项
    • 5.3 break,continue,return的区别
  • 6 arguments的使用
  • 7 函数的两种声明方式

1 本节目标

  • 说出为什么需要函数
  • 根据语法书写函数
  • 根据需求封装函数
  • 说出形参和实参的传递过程
  • 使用函数的返回值
  • 使用arguments获取函数的参数

2 函数的概念

  • 函数:就是封装了一段可被重复调用执行的代码块。通过此代码块可以实现大量代码的重复使用。

3 函数的使用

  • 函数在使用时分为两步:声明函数和调用函数。

3.1 声明函数

// 1.声明函数
function 函数名() {
	// 函数体
}
// 举例:
function sayHi() {
	console.log('hi~~');
}
// 注意:
// function声明函数的关键字 全部小写
// 函数是做某件事情,函数名一般是动词 sayHi
// 函数不调用,自己不执行

3.2 调用函数

// 2.调用函数
函数名();
// 举例:
sayHi();
// 注意:
// 调用函数的时候千万不要忘记加小括号
// 声明函数本身并不会执行代码,只有调用函数时才会执行函数体代码

3.3 函数的封装

  • 函数的封装是把一个或多个功能通过函数的方式封装起来,对外只提供一个简单的函数接口。
  • 简单理解:封装类似于将电脑配件整合组装到机箱中(类似快递打包)。

4 函数的参数

4.1 形参和实参

  • 函数的参数可以有,也可以没有,个数不限。
  • 形参:函数定义的时候传递的参数,当前并不知道是什么,默认值为undefined。
  • 实参:函数调用的时候传递的参数,实参是传递给形参的。
  • 参数的作用:在函数内部某些值不能固定,我们可以通过参数在调用函数时传递不同的值进去。
// 在声明函数的小括号里面是形参(形式上的参数)
function 函数名(形参1,形参2...) {

}
// 在函数调用的小括号里面是实参(实际的参数)
函数名(实参1,实参2...);

4.2 执行过程

// 举例:
// 形参是接收实参的  隐含:aru = '酸辣土豆丝'; 形参类似于一个变量
function cook(aru) {
	console.log(aru);
}
cook('酸辣土豆丝');

4.3 注意点

  • 多个参数之间用逗号隔开。
  • 形参可以看作是不用声明的变量。

4.4 函数形参和实参个数不匹配问题

在这里插入图片描述
在这里插入图片描述

5 函数的返回值

5.1 return语句

  • 有时我们希望函数将值返回给调用者,此时通过使用return语句就可以实现。
  • 函数的返回值格式:
function 函数名() {
	return 需要返回的结果;
}
函数名();
  • 代码体验:
function getResult() {
	return 666;
}
// getResult();  // getResult() = 666 实现赋值操作
console.log(getResult());

// 求任意两个数的和
function getSum(num1,num2) {
	return num1 + num2;
}
console.log(getSum(1,2));

5.2 函数返回值注意事项

  • 函数返回值注意事项:
    1>return终止函数:return语句之后的代码不被执行。
    2>return的返回值:return只能返回一个值,如果用逗号隔开多个值,以最后一个为准。想要输入多个值,可以变相实现,比如利用数组、对象等方式。
    3>函数没有return,返回undefined:函数都是有返回值的。如果有return,则返回return后面的值;如果没有return,则返回undefined。

5.3 break,continue,return的区别

  • break:结束当前的循环体(如for、while)
  • continue:跳出本次循环,继续执行下次循环(如for、while)
  • return:不仅可以退出循环,还能够返回return语句中的值,同时还可以结束当前的函数体内的代码

6 arguments的使用

  • 当我们不确定有多少个参数传递的时候,可以用arguments来获取。在JavaScript中,arguments实际上它是当前函数的一个内置对象。所有函数都内置了一个arguments对象,arguments对象中存储了传递的所有实参
  • 只有函数才有arguments对象。
  • arguments展示形式是一个伪数组,因此可以进行遍历。伪数组具有以下特点:
    1>具有length属性
    2>按索引方式存储数据
    3>不具有数组的push(),pop()等方法
    在这里插入图片描述

7 函数的两种声明方式

  • 利用函数关键字自定义函数
// 1.利用函数关键字自定义函数(命名函数)
function fn() {

}
fn();
  • 利用函数表达式
// 2.函数表达式(匿名函数)
var 变量名 = function() {}
变量名();
var fun = function(aru) {
	console.log('我是函数表达式');
    console.log(aru);
}
fun('小王同学');
  • 注意:
    1>fun是变量名,不是函数名;
    2>函数表达式声明方式跟声明变量差不多,只不过变量里面存的是值,而函数表达式里面存的是函数;
    3>函数表达式也可以传递参数。

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

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

相关文章

Python 中的安全密码处理

前言 几乎每个应用程序都需要某种形式的身份验证、密码处理或使用安全凭据,例如 API 密钥。您可能不是安全专家,但您应该知道如何安全地处理所有这些密码和凭据,以保护应用程序用户的凭据和数据以及您自己的 API 密钥和各种令牌。 &#xf…

GitHub 最全的开发资源汇总系列

GitHub 最全的开发资源汇总系列 了解学习开发各种项目!!! GitHub 最全的开发资源汇总系列 由伯乐在线持续更新 Java 资源大全;Java资源大全中文版,包括开发库、开发工具、网站、博客、微信、微博等。 —— Java资源…

建筑结构抗震分析之施加地震波的方法与理论机理

一、地震波的输入有三种方式: 第一种是是质量加速度施加法,通过达朗贝尔原理,将地震作用转化为施加在质点上惯性力;第二种是底部位移法,在结构底部直接输入位移地震波,模拟地面震动反应,计算结…

Function 源码解析与实践

作者:陈昌浩 1 导读 if…else…在代码中经常使用,听说可以通过 Java 8 的 Function 接口来消灭 if…else…!Function 接口是什么?如果通过 Function 接口接口消灭 if…else…呢?让我们一起来探索一下吧。 2 Functio…

共享新机遇 共谋新发展 | 蓝海创意云携元宇宙技术参展2022昆明南博会

11月19日,第6届中国-南亚博览会暨第26届中国昆明进出口商品交易会(以下简称南博会)在昆明盛大开幕,经过10年的精心打造,南博会已经成为集国际贸易、投资洽谈、文化交流等为一体的高水平综合性国际博览会。 蓝海创意云…

草料二维码表单如何推送至工作群

在我们使用草料二维码进行隐患排查、故障报修、预约报名、巡检异常等场景时,需要时不时查看草料后台,检查是否有新的信息更新,或者提交后人工再单独通知一次,经常造成信息传递不及时,那么能不能当有表单提交时&#xf…

项目管理软件有哪些,哪个好用?

做过项目的朋友肯定都知道,项目管理软件是专门用来帮助计划和控制项目资源、成本与进度的计算机应用程序。这类软件可以帮助企业管理项目进度,节省项目人力成本支出,增进团队协作与沟通,提升团队成员工作效率,让资源可…

Java本地高性能缓存实践

Java缓存技术可分为远端缓存和本地缓存,远端缓存常用的方案有著名的redis和memcache,而本地缓存的代表技术主要有HashMap,Guava Cache,Caffeine和Encahche。远端缓存将在后面的博文中进行深入探讨,此处挖个坑&#xff…

【013】基于Vue的酒店客房管理系统(含管理员、普通用户两种身份(附源码数据库、课设报告)

这里写目录标题一、系统详细介绍二、系统部分设计思路三、项目获取一、系统详细介绍 前言: 这次带来的是基于NodejsVueMysql的酒店客房管理系统,含非常非常详细的课设报告,觉得物超所值!文末附源码数据库、论文百度云链接 系统登…

高空简易水果采摘装置设计(CAD+proe)

目 录 摘 要 I Abstract II 1 绪论 1 1.1 选题背景及意义 1 1.2研究现状 1 1.2.1国外果园采摘机械现状 1 1.2.2国内果园采摘机械现状 4 1.2.3果园机械存在问题 5 1.2.4果园采摘机械的发展趋势 6 1.3研究主要内容 7 2 高空简易水果采摘装置原理 8 2.1 水果实采摘方式的选择 8 2.…

零基础入门JavaWeb——HTML相关知识

一、HTML概念 HTML是Hyper Text Markup Language的缩写。意思是超文本标记语言。它的作用是搭建网页结构,在网页上展示内容。 1.1 超文本 HTML文件本质上是文本文件,而普通的文本文件只能显示字符。但是HTML技术通过HTML标签把其他网页、图片、音频、…

微信公众号留言如何实时提醒

几乎每个官方品牌都有一个微信公众号,并且会不定期发布和品牌、产品相关的内容,也经常会收到一些用户的留言。但并不是运营人员每时每刻都登录在公众号后台,查看并回复这些用户的问题,如果我希望有用户给我们公众号留言后&#xf…

运动酒店,如何“奇袭”文旅产业精准蓝海赛道——缤跃酒店

近日,缤跃酒店战略牵手昌泰高速,进驻雷公坳文体产业园,共建江西大健康产业重点基地。作为锦江酒店(中国区)旗下360度健康运动中高端生活方式品牌,缤跃高调与南昌雷公坳文体产业园达成战略合作,强势入驻体育产业园&…

Python读取复杂电子表格(CSV)数据小技巧一则

关于CSV格式 逗号分隔值(Comma-Separated Values,CSV,有时也称为字符分隔值,因为分隔字符也可以不是逗号),其文件以纯文本形式存储表格数据(数字和文本)。“CSV”并不是一种单一的、…

竞赛——【蓝桥杯】2022年12月第十四届蓝桥杯模拟赛第二期Java

1、最小的2022 问题描述 请找到一个大于 2022 的最小数,这个数转换成二进制之后,最低的 6 个二进制为全为 0 。 请将这个数的十进制形式作为答案提交。 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数…

VWware-安装AD域服务

AD域控就是基于轻型目录访问协议将企业网络中的资源(包括用户、计算机、服务器、数据库、共享文件、共享打印机等)合理、安全、有效的管理起来。通俗来说就是:解决了单点登录,简化了身份认证,完成了不同用户资源之间的…

Python连接Clickhouse遇坑篇,耗时一天成功连接!

首先!!!!!!!!!不要看网上那些乱七八糟的使用clickhouse-driver连接了,真tm难用,端口能搞死你那种,超级烦! 推荐直接看官方…

建筑材料企业如何进行采购价格管理?SCM系统助力企业灵活控制采购价格

如今的“广厦千万间”早已矗立在中华大地的各个角落,建筑行业早已经成为中国国民经济发展的重要支柱性产业。同时随着近几年数字经济的兴起,给传统建筑材料行业带来了巨大挑战,如何优化生产运营、保障设备稳定运行、提高和稳定产品质量是每个…

string类的常用接口说明

STL六大组件: 容器 算法 配接器 迭代器 仿函数 空间配置器 温馨提示:只讲常用接口,使用方法说明详见代码注释 目录 一、string类对象的常见构造 二、string类对象的容量操作 三、类对象的访问及遍历操作 四、string类对象的修改操…

万古霉素修饰银纳米粒/磁性纳米微球/负载万古霉素PLGA缓释微球/硅包银纳米三角片

小编今天给大家带来的科研知识是万古霉素修饰银纳米粒/磁性纳米微球/负载万古霉素PLGA缓释微球/硅包银纳米三角片,来看! 万古霉素修饰磁性纳米微球的制备: 磁性纳米粒子具有纳米粒子一般的特性外还具有超顺磁性,而且通过表面修饰可以连接上不同的生物功…