发布于 2026-01-06 4 阅读
0

Javascript 函数

Javascript 函数

目录

函数

函数是 JavaScript 程序的基本构建模块,也是所有编程语言中最常见的特性。从技术角度来说,函数究竟是什么?函数一段代码块,它只需定义一次,就可以多次执行或调用。另外需要注意的是,函数也是对象,这意味着它们可以被其他程序操作。

我们可以使用function关键字声明一个函数,后面跟着一个我们喜欢的名称,再后面跟着一对开括号和闭括号,括号和大括号parentheses之间有一个空格,大括号内可以有零个或多个语句。parameterscurly

  function buzz() { }
Enter fullscreen mode Exit fullscreen mode

现代 JavaScript 中还有另一种声明函数的方法,那就是使用 ` arrow function.`。它看起来像一个箭头,但它有自己的章节,我们稍后也会介绍,因为它有一些限制。

  () => {}
Enter fullscreen mode Exit fullscreen mode

在括号内,我们可以包含标识符,或者说参数。这些参数充当函数体的局部变量。要从这些变量中获取值,我们只需调用函数并传入一些值(或技术术语中的参数)即可。我们使用这些参数来计算值,并在调用过程中返回该值。

如果将一个函数赋值给对象的一个​​属性,该函数就成为method该对象的一个​​属性。这就让事情变得稍微复杂了一些,因为我们现在是通过对象来调用函数,对象就成了关键字的上下文this。关键字this本身值得另写一篇文章来讨论,所以我们暂时略过,但记住这一点在为对象创建方法时很有用。也就是说,我们也可以将函数赋值给一个变量,然后将该变量传递给其他函数。正如我们之前提到的,由于函数也是对象,因此你也可以设置它们的属性并调用它们的方法。

传统功能

关键字function是声明函数的唯一方法。我们还可以声明函数表达式,它本质上就是将函数存储在一个变量中。例如

函数声明


function printName(str) {
   return "Hello " + str
}

console.log(printName('oscar')) // output "Hello oscar"

Enter fullscreen mode Exit fullscreen mode

函数表达式

let addUp = function(a,b) {
  return a + b
} 

console.log(addUp(1,2)) // output 3
Enter fullscreen mode Exit fullscreen mode

function declaration`a`和` function expressionb`的主要区别之一在于函数名,在函数表达式中可以省略函数名以创建匿名函数。默认情况下,undefined如果没有指定返回值的 `return` 语句,函数会返回 `null`。关于函数,还需要注意的一点是,它们也可以在 ` if/elseif` 语句中使用条件声明,但这通常会导致结果不一致,因此不建议这样做。

声明函数的一个很棒的特性提升,你可以在声明函数之前使用它。

printHello(); // logs 'Hello'

function printHello() {
   console.log('Hello');
}

Enter fullscreen mode Exit fullscreen mode

另一方面,函数表达式不会 被提升。因此,你不能在创建函数表达式之前就使用它。

箭头函数

ES6引入了`__init__`arrow functions关键字,它是传统函数表达式的一种简洁高效的替代方案,但也有其局限性,并非适用于所有情况。它没有像 `__init__``__returns` 关键字那样的绑定,也不适用于`__init__`、`__returns` 或 `__returns`方法,更不能用作构造函数。thissupercallapplybind

让我们把 a 分解declared function成 aarrow function

  function(name) {
    return 'Hello ' + name;
  }
Enter fullscreen mode Exit fullscreen mode

我们首先删除function关键字,保留参数,然后arrow在参数和花括号之间添加一个。

  (name) => {
  return 'Hello ' + name;
}
Enter fullscreen mode Exit fullscreen mode

接下来,我们将移除花括号和 return 语句。return 语句是自动省略的。

  (name) => 'Hello ' + name;
Enter fullscreen mode Exit fullscreen mode

最后一步,我们可以去掉括号,因为参数中只传递了一个参数。

  name => 'Hello ' + name;
Enter fullscreen mode Exit fullscreen mode

正如我们之前提到的,强烈建议不要使用箭头函数,methods以避免出现错误或其他问题,箭头函数最适合用于非方法函数。

结论

我希望读完本文后,您能够学会如何编写代码,并理解每一行代码的运行机制。理解代码的完整工作原理至关重要,这不仅能帮助您成为更优秀的开发者,还能帮助您更高效地使用各种工具。

这些文章主要是为了个人提升编程和写作能力而写的,旨在提高我的编程技能。如果您有任何反馈或建议,欢迎随时提出,这对我和其他读者都很有帮助。感谢您耐心读到这里!

文章来源:https://dev.to/cleveroscar/javascript-functions-k34