JavaScript函数声明与函数表达式

news2024/11/27 9:52:58

在 JavaScript 中,可以通过两种方式来定义函数:函数声明和函数表达式。
函数声明使用 function 关键字进行定义,并且在整个作用域中都可用。

函数声明的方式:

function calcAge1(birthYear) {
  return 2037 - birthYear;
}
const zhangSanAge = calcAge1(1998);
console.log(zhangSanAge);

在这里插入图片描述

函数表达式的方式:

函数表达式是将函数作为值赋给一个变量的方式进行定义,并且只有在其定义之后才能被调用。

const peopleAge = function calcAge1(birthYear) {
    return 2037 - birthYear;
}

const zhangSanAge = peopleAge(2000);
console.log(zhangSanAge);

在这里插入图片描述

注意:使用函数表达式必须要先进行函数初始化,然后才能去调用函数;但是声明函数的当时不需要,因为声明函数是全局的

const zhangSanAge = peopleAge(2000);

const peopleAge = function calcAge1(birthYear) {
  return 2037 - birthYear;
};

console.log(zhangSanAge);

这样就会报错;

函数声明和函数表达式的区别:

  1. 函数声明在整个作用域中可用,而函数表达式只在其定义之后可用。
  2. 在函数声明中,函数名是必需的,而在函数表达式中,函数名是可选的。
  3. 由于函数表达式返回一个函数值,因此可以将其作为参数传递给其他函数或者返回函数作为另一个函数的结果,而函数声明则不允许这样做。
    因此,在选择使用函数声明还是函数表达式时,需要根据特定的需求和场景进行选择。通常情况下,如果需要在整个作用域中使用函数,则使用函数声明,如果需要将函数作为值进行操作,则使用函数表达式。

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

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

相关文章

制造执行系统(MES)在新能源领域的应用

制造执行系统(MES)在新能源领域有许多应用,特别是在管理、监控和优化新能源生产过程方面。新能源包括太阳能、风能、生物质能、地热能等。以下是一些MES在新能源方面的应用领域: 生产计划与调度:MES可以协助规划和调度…

FiboSearch Pro – Ajax Search for WooCommerce 商城AJAX实时搜索插件

FiboSearch Pro是最受欢迎的WooCommerce 产品搜索插件。它为您的用户提供精心设计的高级 AJAX 搜索栏,并提供实时搜索建议。默认情况下,WooCommerce 提供非常简单的搜索解决方案,没有实时产品搜索,甚至没有 SKU 搜索。FiboSearch&…

多种求组合数算法

目录 求组合数Ⅰ(递推)核心理论理论推导典型例题代码实现 求组合数Ⅱ(预处理)核心理论典型例题代码实现 求组合数Ⅲ(Lucas定理)核心理论Lucas定理的证明1.证明Lucas定理的第一形式2.证明Lucas定理的第二形式…

顺序表的插入,删除,修改和查找(详细解析)

目录 一.顺序表的初始化----静态分配 二.顺序表的初始化----动态分配 三.顺序表的插入 1.插入操作 2.插入操作的时间复杂度 三.顺序表的删除操作 1.顺序表的删除 2.删除操作的时间复杂度 四.顺序表的查找 1.按位查找操作:查找第i位置的元素 2.按位查找操作…

嘉实基金:金融科技与开源治理的双驱动,打造安全的资管业务数字系统

嘉实基金成立于1999年,是国内最早成立的十家基金管理公司之一,也是国内首家资产管理规模超过千亿的基金公司。作为一家领先的投资管理公司,嘉实基金也在数字化转型趋势中,积极推进金融科技在金融资管行业中的探索实践。为了支撑基…

7-zip 更换图标:定制你的7-Zip

7-Zip Theme Manager是一个用于管理和应用自定义主题的软件工具,专门为7-Zip文件压缩软件开发。它允许用户选择并应用各种主题来改变7-Zip的外观和用户界面,包括颜色方案、图标集、按钮样式等。通过更改主题,用户可以使7-Zip界面更加美观、易…

【PostgreSQL的CLOG解析】

同样还是这张图,之前发过shared_buffer和os cache、wal buffer和work mem的文章,今天的主题是图中的clog,即 commit log,PostgreSQL10之前放在数据库目录的pg_clog下面。PostgreSQL10之后修更名为xact,数据目录变更为pg_xact下面&…

【 运维这些事儿 】- Gerrit代码审查详

文章目录 背景作用代码审查工具Gerrit镜像构建Dockerfile 部署配置 Gitlab代码同步ssh-agent 相关概念常用命令Git 配置使用 Git Review针对已有项目添加commit-msg,用于自动添加changeId添加源配置 .gitreview备注指定审核人自定义git命令 开发使用代码审查 背景 …

image has dependent child images

问题:很多none的镜像无法被删除 解决过程: 1、通过 docker image prune -f 提示可删除为 0 2、直接进行删除报错: docker rmi 8f5116cbc201Error response from daemon: conflict: unable to delete 8f5116cbc201 (cannot be forced) - im…

面试题-React(一):React是什么?它的主要特点是什么?

探索React:前端开发中的重要角色与主要特点 引言: 在现代前端开发领域,React已经成为最受欢迎和广泛使用的JavaScript库之一。它由Facebook开发并于2013年首次发布。随着时间的推移,React在开发社区中获得了强大的支持和认可。本…

对锁的理解

悲观锁和乐观锁 每次操作的时候都在上锁解锁,能解决并发中的各种问题,不支持并发操作,效率低 每次操作都加上版本号,操作提交的时候会比较数据库版本和目前的版本号是否一致,不一致就会提交失败 表锁和行锁 表锁是对…

Joint HDR Denoising and Fusion: A Real-World Mobile HDR Image Dataset

Abstract 手机已经成为我们日常生活中无处不在、不可或缺的拍照设备,而小光圈和传感器尺寸使得手机更容易受到噪点和过饱和的影响,导致动态范围(LDR)低、画质低。 因此,为手机开发高动态范围(HDR)成像技术至关重要。 然而,现有的…

SpringBean的生命周期和循环依赖

Spring循环依赖 前言 大制作来啦,spring源码篇,很早之前我就想写一系列spring源码篇了,正好最近总是下雨,不想出门,那就让我来带大家走进Spring源码世界吧。 阅读建议 spring源码读起来有点难度,需要多Deb…

性价比最高的护眼灯,护眼台灯应该怎么挑选

随着技术的发展,灯光早已成为每家每户都需要的东西。但是灯光不好可能会对眼睛造成伤害是很多人没有注意到的。现在随着护眼灯产品越来越多,市场上台灯的选择越来越多样化,如何选择一个对眼睛无伤害、无辐射的台灯成为许多家长首先要考虑的问…

limereport报表使用

在这里我使用报表是以报表的形式显示数据库的信息。所以首先需要准备的资料有:limereport源码,还有数据库,我这里使用的是qsqlite数据库。 1、下载limereport报表源码 2、运行自带的案例:demo_r1 3、点击 “Run Report Designer”…

RedisDesktopManager连不上redis问题解决(小白版)

常见问题就是 redis.conf配置文件 a.将port 127.0.0.1这一行注释掉 b.protected-mode保护模式改为no 这个可以看到很多博主都说了,相信都搜到这里来了你们都弄了,我就不详细说了 防火墙开放端口 我说明我自己的问题以及解决方法 1、执行telnet 虚拟…

2023年8月第1~2周大模型荟萃

2023年8月第1~2周大模型荟萃 2023.8.14版权声明:本文为博主chszs的原创文章,未经博主允许不得转载。 1、黑客制造了一款基于 AI 的恶意工具 FraudGPT 早先,有黑客制作了一个“没有道德限制”的 WormGPT 聊天机器人,可以自动生成…

PDF文件限制编辑怎么取消?

PDF文件设置了限制编辑,想要取消PDF文件的限制编辑,很简单,打开PDF编辑器,点击工具栏中的文件,选择属性按钮,进入到熟悉感界面之后,点击安全,然后我们点击权限下拉框,选择…

ModaHub魔搭社区:Milvus Cloud向量数据库可以部分避免AI幻觉

向量数据库的技术优势使其更适合在AI场景下应用,能够为AI的开发、增强内容生成的准确性提供重要的技术支撑。进一步来讲,向量数据库也被看作是大语言模型的记忆与灵魂,对于解决大模型的“幻觉”问题至关重要。 由于大模型是基于已有数据训练而…

TB/TM-商品详情原数据(APP)

一、接口参数说明: item_get_app-获得TB/TMapp商品详情原数据,点击更多API调试,请移步注册API账号点击获取测试key和secret 公共参数 请求地址: https://api-gw.onebound.cn/taobao/item_get_app 名称类型必须描述keyString是调用key&…