web前端:ES6数据分组

    作者:筑筑更新于: 2020-05-12 15:21:40

    Web开发

      ECMAScript是一种由Ecma国际(前身为欧洲计算机制造商协会,英文名称是EuropeanComputerManufacturersAssociation)通过ECMA-262标准化的脚本程序设计语言。这种语言在万维网上应用广泛,它往往被称为Javascript或JScript,所以它可以理解为是javascript的一个标准,但实际上后两者是ECMA-262标准的实现和扩展。

      ES6是继ES5之后的一次主要改进,语言规范由ES5.1时代的245页扩充至600页。ES6增添了许多必要的特性,例如:模块和类,以及一些实用特性,例如MaPS、Sets、Promises、生成器(Generators)等。尽管ES6做了大量的更新,但是它依旧完全向后兼容以前的版本,标准化委员会决定避免由不兼容版本语言导致的"web体验破碎"。结果是,所有老代码都可以正常运行,整个过渡也显得更为平滑,但随之而来的问题是,开发者们抱怨了多年的老问题依然存在。

      ECMAScript2016的制定工作已经启动,许多草案已被提交到委员会,包括以下这些:异步方法、定型对象、并行JavaScript、类修饰符以及observables。虽然委员会正在积极评估这些特性,但我们无法预知它们的未来,其中一些会加入到下一版规范,另一些会加入未来的其它规范,剩下的将最终被遗弃。TC39进程解释了新特性从开始到最终被语言采用所经历的各种阶段。

      ES6数据分组

      ItemGroupBy(arr,key){

      letnewArr=[],

      types={},

      newItem,i,j,cur;

      for(i=0,j=arr.length;i

      cur=arr[i];

      if(!(cur[key]intypes)){

      types[cur[key]]={type:cur[key],data:[]};

      newArr.push(types[cur[key]]);

      }

      types[cur[key]].data.push(cur);

      }

      returnnewArr;

      }

      ECMA-262定义了ECMAScript支持的一套关键字,这些关键字标识了ECMAScript语句的开头和/或结尾。根据规定,关键字是保留的,不能用作变量名或函数名。

      ECMAScript实际上是一种脚本在语法和语义上的标准。实际上JavaScript是由ECMAScript,DOM和BOM三者组成的。所以说,在JavaScript,JScript和ActionScript中声明变量,操作数组等语法完全一样,因为它们都是ECMAScript。但是在操作浏览器对象等方面又有各自独特的方法,这些都是各自语言的扩展。

课课家教育

未登录