410 ES6箭头函数
时间:2020-03-24
本文章向大家介绍410 ES6箭头函数,主要包括410 ES6箭头函数使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>06_箭头函数</title>
</head>
<body>
<button id="btn">测试箭头函数this_1</button>
<button id="btn2">测试箭头函数this_2</button>
<!--
* 作用: 定义匿名函数
* 基本语法:
* 没有参数: () => console.log('xxxx')
* 一个参数: i => i+2
* 大于一个参数: (i,j) => i+j
* 函数体不用大括号: 默认返回结果
* 函数体如果有多个语句, 需要用{}包围,若有需要返回的内容,需要手动返回
* 使用场景: 多用来定义回调函数
* 箭头函数的特点:
1、简洁
2、箭头函数没有自己的this,箭头函数的this不是调用的时候决定的,而是在定义的时候处在的对象就是它的this
3、扩展理解: 箭头函数的this看外层的是否有函数,
如果有,外层函数的this就是内部箭头函数的this,
如果没有,则this是window。
-->
<script type="text/javascript">
let fun = function() {
console.log('fun()');
};
fun();
//没有形参,并且函数体只有一条语句
let fun1 = () => console.log('fun1()');
fun1();
console.log(fun1());
//一个形参,并且函数体只有一条语句
let fun2 = x => x;
console.log(fun2(5));
//形参是一个以上
let fun3 = (x, y) => x + y;
console.log(fun3(25, 39)); //64
//函数体有多条语句
let fun4 = (x, y) => {
console.log(x, y);
return x + y;
};
console.log(fun4(34, 48)); //82
setTimeout(() => {
console.log(this);
}, 1000)
let btn = document.getElementById('btn');
//没有箭头函数
btn.onclick = function() {
console.log(this); //btn
};
//箭头函数
let btn2 = document.getElementById('btn2');
let obj = {
name: 'kobe',
age: 39,
getName: () => {
btn2.onclick = () => {
console.log(this); // Window
};
}
};
obj.getName();
function Person() {
this.obj = {
showThis: () => {
console.log(this); // Person
}
}
}
let fun5 = new Person();
fun5.obj.showThis();
</script>
</body>
</html>
原文地址:https://www.cnblogs.com/jianjie/p/12561817.html
- Python爬虫(八)_Requests的使用
- Python爬虫(十一)_案例:使用正则表达式的爬虫
- Python爬虫(十二)_XPath与lxml类库
- 区块链域名热度不减 健康类英文米近六位交易
- Python爬虫(九)_非结构化数据与结构化数据
- Python爬虫(十)_正则表达式
- python爬虫(四)_urllib2库的基本使用
- 投资人榴莲又卖出一枚三拼域名
- python爬虫(五)_urllib2:Get请求和Post请求
- python爬虫(七)_urllib2:urlerror和httperror
- 双拼市场好!米友售出域名chuijia.com
- Elasticsearch--数据索引
- python爬虫(一)_爬虫原理和数据抓取
- 域名tbw.vip一口价58888元交易
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- java编程思想第四版第十一章习题
- java编程思想第四版第十三章字符串 习题
- java编程思想第四版第十三章字符串 总结
- LoRa节点开发——代码详解修改LoRaWAN相关参数
- 01 . Redis简介及部署主从复制
- 07 . Kubernetes之Service
- LoRa节点开发——代码详解如何修改发射和接收信道(频率)
- 06 . Kubernetes之Pod控制器详细介绍及应用
- Python面试题
- 08 . Kubernetes之 ingress及Ingress Controller
- cpu占用过高排查
- LoRa节点开发——代码详解LoRaWAN发送与接收数据
- java编程思想第四版第十四章 类型信息习题
- 聊一聊,如何解密、分析LoRaWAN数据包?
- java编程思想第四版第十四章 类型信息总结