Press "Enter" to skip to content

Tag: ES6

集合迭代任务与iterator对象技术

ES6新增iterator技术是被高度关注的技术,然,iterator确切是什么技术,解决何种编程任务(方便我们制作什么样的程序功能),又与 generator 技术(generator函数返一个iterator对象实例)是何关系,是一系列相关的重要的问题。

EM:编程任务,与程序本身的计算任务,是不同的。「编程」是(程序员)制作具有某处计算结构的程序存在;「计算任务」是(机器)制作某种需要复杂处理过程的计算结果。

ES6新技术之对象技术

 

**「对象」/Object技术**是JS开发中使用最多的技术之一。因为JS应用规模越来越大,对象越来越多(多应用角色,多结构层次的对象),对象的创建和使用应该尽可能的简洁。

ES6对**对象**这个工具作了多个优化改进,让它使用更加方便,和灵活。

本文部分内容择译自《Understanding ECMAScript 6 》。

新版JavaScript的箭头函数

据统计,箭头函数(arrow functions)是新版JS(ES6)最受欢迎的功能之一,并且已经得到各大主流现代浏览的支持。

本文看看箭头函数到底是什么,怎么用法,最常见的使用情景(use cases),还有它的不足或使用陷阱。

本文略译自《ES6 Arrow Functions: Fat and Concise Syntax in JavaScript》。

arrow-functions
arrow-functions

JavaScript异步任务与Promises技术

JavaScript 一般被认为是天生具有异步特性的,这是什么意思?与其它非天生异步的语言相对,异步特性是对「JavaScript应用开发」有什么影响[em]?这些异步编程的方式在新版ES6+有没有新改进?

EM:更确切的是JS应用的交互任务天性具有异步特性,影响主要表现是,有一组异步编程的API。

本文摘译自《Flow Control in Modern JS: Callbacks to Promises to Async/Await》和《 An Overview of JavaScript Promises》两篇文章。

JS第五版的七个新高阶的数组实例方法(Array Extras)

线性数组(Arrays)是很多编程语言都内置的最基础的「数据结构」[1],JavaScript也不例外的支持使用数组。数组在原初设计还是比较接近原始类型的,表征数据和对数据操作都比较原始,故在使用数组解决一个较复杂计算问题时显得比较烦琐(看这篇)。经历了一段时间的演化,ES5引入了一些「数组的实例方法」,通过抽象隐去了一些不必要的烦琐的重复的细节。这部分新的实例方法被称为“array extras”,一共九个:

    1. Array.isArray (这个不是实例方法)
    2. Array.prototype.indexOf
    3. Array.prototype.lastIndexOf
    4. Array.prototype.every
    5. Array.prototype.some
    6. Array.prototype.forEach
    7. Array.prototype.map
    8. Array.prototype.filter
    9. Array.prototype.reduce
    10. Array.prototype.reduceRight

本文简略介绍这些extras方法中的五类七个。