React 教程

浏览7155
更新时间2025-08-20

箭头函数

箭头函数允许我们编写更短的函数语法:

之前:

hello = function() {
  return "Hello World!";
}

使用箭头函数:

hello = () => {
  return "Hello World!";
}

注意:仅当函数只有一个语句时才有效。

如果你有参数,你在括号内传递它们:

带参数的箭头函数:

hello = (val) => "Hello " + val;

其实,如果你只有一个参数,你也可以跳过括号:

不带括号的箭头函数:

hello = val => "Hello " + val;
this

关于 this?

this 的处理在箭头函数中也与常规函数不同。

简而言之,箭头函数没有 this 的绑定。

在常规函数中,this 关键字表示调用该函数的对象,可以是窗口、文档、按钮等。

对于箭头函数,this 关键字总是表示定义箭头函数的对象。

让我们看两个例子来理解其中的区别。

这两个示例都调用了两次方法,第一次是在页面加载时,另一次是在用户单击按钮时。

第一个例子使用正则函数,第二个例子使用箭头函数。

结果显示第一个例子返回了两个不同的对象(窗口和按钮),第二个例子返回了两次Header对象。

实例

对于常规函数,this 表示调用该函数的对象:

class Header {
  constructor() {
    this.color = "Red";
  }

//常规功能:
  changeColor = function() {
    document.getElementById("demo").innerHTML += this;
  }
}

const myheader = new Header();

//窗口对象调用函数:
window.addEventListener("load", myheader.changeColor);

//一个按钮对象调用该函数:
document.getElementById("btn").addEventListener("click", myheader.changeColor);

实例

用箭头函数,this代表无论是谁调用函数的Header对象:

class Header {
  constructor() {
    this.color = "Red";
  }

//箭头函数:
  changeColor = () => {
    document.getElementById("demo").innerHTML += this;
  }
}

const myheader = new Header();

//窗口对象调用函数:
window.addEventListener("load", myheader.changeColor);

//一个按钮对象调用函数:
document.getElementById("btn").addEventListener("click", myheader.changeColor);

在使用函数时请记住这些差异。 有时,常规函数的行为是您想要的,如果不是,请使用箭头函数。


学习训练

练习题:

完成这个箭头功能:

hello =  "Hello World!";

开始练习


相关视频

更多

免费

前端入门_HTML5
初级前端入门_HTML5

64.1万次学习

收藏

免费

30分钟学会网站布局
初级30分钟学会网站布局

24.4万次学习

收藏

免费

CSS视频教程-玉女心经版
初级CSS视频教程-玉女心经版

40.7万次学习

收藏

免费

JavaScript极速入门_玉女心经系列
初级JavaScript极速入门_玉女心经系列

75.6万次学习

收藏

精品课程

更多
前端入门_HTML5
前端入门_HTML5

共29课时

64.4万人学习

CSS视频教程-玉女心经版
CSS视频教程-玉女心经版

共25课时

40.9万人学习

JavaScript极速入门_玉女心经系列
JavaScript极速入门_玉女心经系列

共43课时

76万人学习

独孤九贱(1)_HTML5视频教程
独孤九贱(1)_HTML5视频教程

共25课时

63.7万人学习

独孤九贱(2)_CSS视频教程
独孤九贱(2)_CSS视频教程

共22课时

24.1万人学习

独孤九贱(3)_JavaScript视频教程
独孤九贱(3)_JavaScript视频教程

共28课时

35.8万人学习

独孤九贱(4)_PHP视频教程
独孤九贱(4)_PHP视频教程

共89课时

131.8万人学习

热门下载

更多
phpStudy 2018最新版
phpStudy 2018最新版

集成PHP7,16种组合,超全大合集

下载

VC9 32位
VC9 32位

VC9 32位 phpstudy集成安装环境运行库

下载

VC11 32位
VC11 32位

VC11 32位 phpstudy集成安装环境运行库​

下载

php程序员工具箱完整版
php程序员工具箱完整版

程序员工具箱 v1.0 php集成环境

下载

VC14 32位
VC14 32位

VC14 32位 phpstudy安装环境运行库

下载

SublimeText3汉化版
SublimeText3汉化版

中文版,非常好用

下载

Notepad++ Windows版
Notepad++ Windows版

Notepad++ 8.9.7 Windows版官方安装包,适合 Windows 用户进行代码编辑、文本处理、语法高亮和插件扩展配置。

下载