[2017专题] 从 ES5 升级概览

news/2024/6/30 23:04:02

并非新内容,而是搬运过去的专题。

从 ES5 升级概览

哪里爽

  • ES6 核心特性 详细地比较了升级前后的代码部分

哪里坑

  • You-don't Know JS 的 ES6 部分 对新的语言特性与边界介绍得不厌其详
  • ES6新语法疑点简析 简述了一些新标准可能会造成疑惑的地方

哪里慢

  • Six-speed 比较了 ES6 与 ES5 的等效实现在各种上下文中的速度差异

哪兼容

  • Test262 为官方的测试套件
  • ES6 Compatibility Table for browsers 为浏览器端兼容性测试
  • ES6 Compatibility Table for nodejs 为 Nodejs 端兼容性测试

一句话子特性

语法

  • constlet解决了几乎所有的var副作用:没有提升行为、全局影响,新增了块级作用域,禁止了重新声明
  • 解构可用于很多像 Promise 单参链式调用的场景;Spread & Rest 操作符简化了数组和对象的构成和解构
  • 模板字面量语法让字符串的构成更加直观

流程

  • Promise 帮助我们用链式调用的形式梳理多重异步调用与流程控制
  • Generator 是一个语言级别的协程实现
  • Async Await 以同步形式书写异步代码,简洁而一目了然
  • for..of 和迭代器的使用让集合类容器可以被更直观地迭代

函数

  • 集合类扩展一部分是提升性能表现的 Typed Arrays,另一部分提升了代码的表现力如 Map、Set、WeakMap 和 WeakSet
  • Arrow Functions 帮助我们在声明匿名函数的同时固化 this 指向
  • Class 提供了更清晰的原型链和 Constructor 定义
  • Symbol 为对象提供了一种隐藏属性,不会被迭代出来,不能使用已有的反射工具获取,也不与对象中的其他属性冲突
  • Proxy 适用于更加简洁的观察者模式实现、无限链式调用等代码
  • Reflect 是包装得更加完善的反射 API 的集合

http://www.niftyadmin.cn/n/4617760.html

相关文章

LVS的工作机制

LVS Linux Virtual Server:Linux虚拟服务器 LVS是一台主机,将数据转发给其他的真正的主机的。LVS的应用只需要装在调度节点上,它的工作原理基本类似于DNAT。其实虚拟服务器可以看做是一个四层交换。通过套接字来完成的转发。这对于客户端来说…

登录 ,注册 界面实现 代码

//1、账号标签 UILabel *idLalel [[UILabel alloc] initWithFrame:CGRectMake(30, 100, 70, 30)]; //2、设置⽂文本控制相关的属性 idLalel.text "账号:"; [self addSubview:idLalel]; [idLalel release]; //1、密码标签 UILabel *passLalel [[UILabel…

编译与反编译

编译:高级语言转换成计算机认识的低级语言 编译的主要的目的是将便于人编写、阅读、维护的高级语言所写作的源代码程序,翻译为计算机能解读、运行的低级语言的程序,也就是可执行文件。 反编译:Java的反编译,一般是将…

JVM上篇(13):GC分类器

GC分类器GC 分类与性能指标Java不同版本新特性垃圾回收器分类评估 GC 的性能指标指标吞吐量(throughput)暂停时间吞吐量 vs 暂停时间不同的垃圾回收器概述垃圾收集器发展史7款经典的垃圾收集器垃圾收集器的组合关系查看默认垃圾收集器Serial 回收器&…

正则表达式那些事

正则是无论学习计算机哪个方向都无法跳过的,可谓难逃一死。个人认为还是多练习,在练习的过程中熟悉并且思考。今天这篇博文主要内容是在网上找到的,觉得写得很全面,详细。转载过来一是留给自己,二是分享给大家。 \ 将下…

IOS 点击空白处隐藏键盘的几种方法

IOS 点击空白处隐藏键盘的几种方法 IOS7 点击空白处隐藏键盘的几种方法 IOS开发中经常要用到输入框,默认情况下点击输入框就会弹出键盘,但是必须要实现输入框return的委托方法才能取消键盘的显示,对于用户体验来说很不友好,我们可…

Silverlight WCF RIA服务 (二)解决方案结构

上节大概介绍了一下 WCF RIA 服务, 这次介绍下整个解决方案的结构。 当创建应用程序时,WCF RIA服务可以帮你建立满足各种各样情况的解决方案。例如只是在中间层访问很少domain services的Silverlight应用程序。更复杂的例子可能是几个Silverlight程序都连…

区块链(肖臻笔记)

区块链的技术与应用 比特币 密码学基础 比特币的数据结构 共识协议和系统实现 挖矿算法和难度调整 比特币的脚本 软分叉和硬分叉 匿名和隐私保护 以太坊 概述:基于账户的分布式账本 数据结构:状态树、交易树、收据树 ghost协议 挖矿&#x…