博客
关于我
第四课:ES6新语法:箭头函数(2021/4/21)
阅读量:324 次
发布时间:2019-03-04

本文共 930 字,大约阅读时间需要 3 分钟。

箭头函数是 JavaScript 中一种简化函数定义的方式,通过这种方式可以更简洁地表达函数逻辑。

箭头函数的简化性

箭头函数的核心特点是其语法简洁。传统的函数定义需要明确写出函数体和返回值,而箭头函数则能够通过简短的代码实现同样的效果。

() => {
return value;
}
const fn = () => {
return value;
}

在箭头函数中,如果函数体中只有一句代码且该代码的执行结果就是函数的返回值,函数体的大括号可以省略。例如:

const sum = (n1, n2) => n1 + n2;

如果函数只有一个参数,可以省略小括号:

const fn = v => v;

这种简化使得代码更加简洁易读,同时也减少了错误率。


this关键字的绑定问题

箭头函数的另一个特殊之处是其对this关键字的处理方式。箭头函数本身不具备this绑定机制,其this关键字将指向函数定义位置的上下文。

示例1

function fn() {
console.log(this);
return () => {
console.log(this);
};
}
const obj = { name: 'zhangsan' };
const resFn = fn.call(obj);
resFn();

在上述代码中,定义的函数fn是一个普通函数,通过fn.call(obj)将this绑定到obj对象上。当resFn执行时,它内部的箭头函数的this仍然指向obj。

示例2

var obj = {
age: 20,
say: () => {
console.log(this.age);
}
};
obj.say(); // 输出 undefined
var obj = {
age: 20,
say: function() {
console.log(this.age);
}
};
obj.say(); // 输出 20

在箭头函数版本中,this指向全局对象(即window),这与普通函数的行为有所不同。这种特性需要开发者特别注意,尤其是在涉及对象方法的场景中。

转载地址:http://nuch.baihongyu.com/

你可能感兴趣的文章
NIFI大数据进阶_NIFI的模板和组的使用-介绍和实际操作_创建组_嵌套组_模板创建下载_导入---大数据之Nifi工作笔记0022
查看>>
NIFI大数据进阶_NIFI监控的强大功能介绍_处理器面板_进程组面板_summary监控_data_provenance事件源---大数据之Nifi工作笔记0025
查看>>
NIFI大数据进阶_内嵌ZK模式集群1_搭建过程说明---大数据之Nifi工作笔记0015
查看>>
NIFI大数据进阶_外部ZK模式集群1_实际操作搭建NIFI外部ZK模式集群---大数据之Nifi工作笔记0017
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_01_实际操作---大数据之Nifi工作笔记0029
查看>>
NIFI大数据进阶_离线同步MySql数据到HDFS_02_实际操作_splitjson处理器_puthdfs处理器_querydatabasetable处理器---大数据之Nifi工作笔记0030
查看>>
NIFI大数据进阶_连接与关系_设置数据流负载均衡_设置背压_设置展现弯曲_介绍以及实际操作---大数据之Nifi工作笔记0027
查看>>
NIFI数据库同步_多表_特定表同时同步_实际操作_MySqlToMysql_可推广到其他数据库_Postgresql_Hbase_SqlServer等----大数据之Nifi工作笔记0053
查看>>
NIFI汉化_替换logo_二次开发_Idea编译NIFI最新源码_详细过程记录_全解析_Maven编译NIFI避坑指南001---大数据之Nifi工作笔记0068
查看>>
NIFI集群_内存溢出_CPU占用100%修复_GC overhead limit exceeded_NIFI: out of memory error ---大数据之Nifi工作笔记0017
查看>>
NIFI集群_队列Queue中数据无法清空_清除队列数据报错_无法删除queue_解决_集群中机器交替重启删除---大数据之Nifi工作笔记0061
查看>>
NIH发布包含10600张CT图像数据库 为AI算法测试铺路
查看>>
Nim教程【十二】
查看>>
Nim游戏
查看>>
NIO ByteBuffer实现原理
查看>>
Nio ByteBuffer组件读写指针切换原理与常用方法
查看>>
NIO Selector实现原理
查看>>
nio 中channel和buffer的基本使用
查看>>
NIO三大组件基础知识
查看>>
NIO与零拷贝和AIO
查看>>