博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ES6特性的两点分析
阅读量:5279 次
发布时间:2019-06-14

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

块级作用域声明let、const

ES6中const 和let的功能,转换为ES5之后,我们会发现实质就是在块级作用改变一下变量名,使之与外层不同。
ES6转换前:

let a1 = 1;let a2 = 6;{  let a1 = 2;  let a2 = 5;{  let a1 = 4;  let a2 = 5;}}a1 = 3;

 

转换ES5后:

let a1 = 1;let a2 = 6;{  let a1 = 2;  let a2 = 5;{  let a1 = 4;  let a2 = 5;}}a1 = 3;

箭头函数

箭头函数其实主要是省了写函数的代码,同时能够直接用使外层的this而不用担心context切换的问题。以前我们一般都要在外层多写一个_this/self直向this。其实转换为ES5也是利用这种方法实现的。
ES6转换前:

var obj = {  prop: 1,  func: function() {    var _this = this;    var innerFunc = () => {    this.prop = 1;  };  var innerFunc1 = function() {    this.prop = 1;  };};

转换ES5后:

var obj = {  prop: 1,  func: function func() {    var _this2 = this;    var _this = this;    var innerFunc = function innerFunc() {      _this2.prop = 1;  };var innerFunc1 = function innerFunc1() {  this.prop = 1;};};

 

转载于:https://www.cnblogs.com/littlewriter/p/7678987.html

你可能感兴趣的文章
JS常见问题
查看>>
2005年1月28日 每天一得,(int to unit)
查看>>
Rocksdb引擎记录格式
查看>>
获取今年所有星期天的日期!
查看>>
Google 的开源技术protobuf 简介
查看>>
linux do{} while(0)
查看>>
leetcode230. 二叉搜索树中第K小的元素
查看>>
[WC2008]游览计划
查看>>
经典算法题每日演练——第十八题 外排序
查看>>
LINK : fatal error LNK1104: 无法打开文件“freeglutd.lib”
查看>>
Ajax反填截取路径版
查看>>
iOS开发 点菜系统 使用UIPickerView
查看>>
Spring入门---示例四----集合与数组类型注入【第一天】
查看>>
洛谷—— P1765 手机_NOI导刊2010普及(10)
查看>>
MSIL实用指南-位运算
查看>>
unity 4.x 从入门到精通(持续更新)
查看>>
Ryu学习总结(持续更新)
查看>>
springboot1.5.9整合websocket实现实时显示的小demo
查看>>
zookeeper集群启动顺序问题
查看>>
读书笔记(4)
查看>>