JavaScript 系列六:函数

本文是JavaScript系列教程的第六部分,详细介绍了函数的各个方面,包括函数的定义、函数作为值、this关键字、递归以及函数参数的特性。特别强调了JavaScript中函数参数的灵活性,可以接受任意数量和类型的参数,以及如何利用arguments对象来处理不确定数量的参数。此外,还讨论了函数名称的本质,指出函数名是一个指向函数的指针,可以作为变量赋值和传递。最后,文章提到了函数的递归调用,并给出了递归函数的正确实现方式。
摘要由CSDN通过智能技术生成

快来加入我们吧!

"小和山的菜鸟们",为前端开发者提供技术相关资讯以及系列基础文章。为更好的用户体验,请您移至我们官网小和山的菜鸟们 ( https://xhs-rookies.com/ ) 进行学习,及时获取最新文章。

"Code tailor" ,如果您对我们文章感兴趣、或是想提一些建议,微信关注 “小和山的菜鸟们” 公众号,与我们取的联系,您也可以在微信上观看我们的文章。每一个建议或是赞同都是对我们极大的鼓励!

函数

前言

在开始学习之前,我们想要告诉您的是,本文章是对JavaScript语言知识中 “函数” 部分的总结,如果您已掌握下面知识事项,则可跳过此环节直接进入题目练习

  • 函数简介
  • 函数名称
  • 函数重载
  • 函数声明与函数表达式
  • 函数作为值
  • this
  • 函数的递归

如果您对某些部分有些遗忘,👇🏻 已经为您准备好了!

汇总总结

函数简介

函数是所有编程语言的核心部分,因为它们可以封装语句,且被定义后可以在任何地方、任何时间执行。ECMAScript 中的函数使用 function 关键字进行声明,后跟一组参数,然后是函数体。

以下是函数的基本语法:

function functionName(arg0, arg1,...,argN) {
   
 //表达式
}

下面是一个例子:

function sayHi(name, message) {
   
  console.log('Hello ' + name + ', ' + message)
}

可以通过函数名来调用函数,要传给函数的参数放在括号里(如果有多个参数,则用逗号隔开)。

下面是调用函数 sayHi() 的示例:

sayHi('xhs', 'do you study today?')

调用这个函数的输出结果是 "Hello xhs, do you study today?"。 参数 namemessage 在函数内部作为字符串被拼接在了一起,最终通过 console.log() 输出到控制台。

ECMAScript 中的函数不需要指定是否返回值,也不限制返回值的类型。任何函数在任何时间都可以使用 return 语句来返回函数的值,用法是后跟要返回的值,返回值可以是任何类型。比如:

function sum(num1, num2) {
   
  return num1 + num2
}

函数 sum() 会将两个值相加并返回结果。注意,除了 return 语句之外没有任何特殊声明表明该函数有返回值。然后就可以这样调用它:

const result = sum(5, 10)

值得注意的是,只要执行到 return 语句,函数就会立即停止执行并退出。因此,return 语句后面的代码不会被执行。比如:

function sum(num1, num2) {
   
  return num1 + num2

  console.log('Hello world') //不会执行
}

在这个例子中,console.log() 不会执行,因为它在 return 语句后面,解释器在执行到 return 语句后就停止对该函数的执行。

一个函数里可以有多个 return 语句,像这样:

function subtract(num1, num2) {
   
  if (num1 < num2) {
   
    return num2 - num1
  } else {
   
    return num1 - num2
  }
}

这个 subtract() 函数用于计算两个数值的差。如果第一个数值小于第二个,则用第二个减第一个;否则,就用第一个减第二个。代码中每个分支都有自己的 return 语句,返回正确的差值。return 语句也可以不带返回值。这时候,函数会立即停止执行并返回 undefined。这种用法最常用于提前终止函数执行,并不是为了返回值。比如在下面的例子中,console.log() 不会执行:

function sayHi(name, message) {
   
  return

  console.log('Hello ' + name + ', ' + message) // 不会执行
}

根据开发经验而言,一个函数要么返回值,要么不返回值。只在某个条件下返回值的函数会带来麻烦,尤其是调试时。

函数名称

函数名是一个指向函数的指针,所以它们跟其他包含对象指针的变量具有相同的行为。这意味着一个函数可以有多个函数名,如下所示:

function sum(num1, num2) {
   
  return num1 + num2
}

console.log(sum(10, 10)) 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值