• symbol

    Symbol概述ES5的对象属性名都是字符串,这容易造成属性名的冲突。比如,你使用了一个他人提供的对象,但又想为这个对象添加新的方法(mixin模式),新方法的名字就有可能与现有方法产生冲突。如果有一种机制,保证每个属性的名字都是独一无二的就好了,这样就从根本上防止属性名的冲突。这就是ES6引入Sy...

    string 字符串的扩展

    字符串的扩展本章介绍ES6对字符串的改造和增强,下一章介绍字符串对象的新增方法。字符的Unicode表示法ES6加强了对Unicode的支持,允许采用\uxxxx形式表示一个字符,其中xxxx表示字符的Unicode码点。"\u0061"//"a"但是,这种表...

    style 编程风格

    编程风格本章探讨如何将ES6的新语法,运用到编码实践之中,与传统的JavaScript语法结合在一起,写出合理的、易于阅读和维护的代码。多家公司和组织已经公开了它们的风格规范,下面的内容主要参考了Airbnb公司的JavaScript风格规范。块级作用域(1)let取代varES6提出了两个新的声明...

    string-methods 字符串对象的新增方法

    字符串的新增方法本章介绍字符串对象的新增方法。String.fromCodePoint()ES5提供String.fromCharCode()方法,用于从Unicode码点返回对应字符,但是这个方法不能识别码点大于0xFFFF的字符。String.fromCharCode(0x20BB7)//&qu...

    Set 和 Map 数据结构

    Set和Map数据结构Set基本用法ES6提供了新的数据结构Set。它类似于数组,但是成员的值都是唯一的,没有重复的值。Set本身是一个构造函数,用来生成Set数据结构。consts=newSet();[2,3,5,4,5,2,2].forEach(x=>s.add(x));for(letio...

    simd

    SIMD概述SIMD(发音/sim-dee/)是“SingleInstruction/MultipleData”的缩写,意为“单指令,多数据”。它是JavaScript操作CPU对应指令的接口,你可以看做这是一种不同的运算执行模式。与它相对的是SISD(“SingleInstruction/Sing...

    读懂 ECMAScript 规格

    读懂ECMAScript规格概述规格文件是计算机语言的官方标准,详细描述语法规则和实现方法。一般来说,没有必要阅读规格,除非你要写编译器。因为规格写得非常抽象和精炼,又缺乏实例,不容易理解,而且对于解决实际的应用问题,帮助不大。但是,如果你遇到疑难的语法问题,实在找不到答案,这时可以去查看规格文件,...

    regex 正则的扩展

    正则的扩展RegExp构造函数在ES5中,RegExp构造函数的参数有两种情况。第一种情况是,参数是字符串,这时第二个参数表示正则表达式的修饰符(flag)。varregex=newRegExp('xyz','i');//等价于varregex=/xyz/i;第二种情况是,参数是一个正则表示式,这时...

    reflect

    Reflect概述Reflect对象与Proxy对象一样,也是ES6为了操作对象而提供的新API。Reflect对象的设计目的有这样几个。(1)将Object对象的一些明显属于语言内部的方法(比如Object.defineProperty),放到Reflect对象上。现阶段,某些方法同时在Objec...

    reference 参考链接

    参考链接官方文件ECMAScript®2015LanguageSpecification:ECMAScript2015规格ECMAScript®2016LanguageSpecification:ECMAScript2016规格ECMAScript®2017LanguageSpecification...