• ES6特性


    ES6特性:

      let, const, class, extends, super, arrow functions, template string, destructuring, default, rest arguments。。。

    一、let, const

    这两个的用途与var类似,都是用来声明变量的,但在实际运用中他俩都有各自的特殊用途。
    首先来看下面这个例子:

    传统var写法:

    ES6写法let实际上为JavaScript新增了块级作用域。用它所声明的变量,只在let命令所在的代码块内有效。

     

    浏览器返回:

     二、class, extends, super,ES6使用传统语言的写法,更通俗易懂:

    三、arrow function(*

    四、template string

    这个更加常用,而且很有用,就是每次要写动态添加html就要写很多个加号,很不方便,ES6解决此问题。

    传统写法:

    ES6写法:

    注意:用反引号()来标识起始,用${}`来引用变量,而且所有的空格和缩进都会被保留在输出之中

    五、destructuring

    ES6写法:

    六、default, rest

    七、Set和Map数据结构:

    Set遍历方法:set.key()

    set.values()

    set.entries()

    1、Set例子:

    var s = new Set();

    var arr = [1,1,2,3,6,8,8,9,10];

    arr.map( x => s.add(x) );

    for (i of s) {

      console.log(i);

    }

    打开结果:通过add,Set结构不会添加重复的值

    PS:Set对存入数据 1和'1',是不识别,需求用 "===" .

    2、Map:

    1、Map结构的目的和基本用法:
      JavaScript的对象(Object),本质上是键值对的集合(Hash结构),但是只能用字符串当作键。这给它的使用带来了很大的限制。

    2、例子:

    var map = new Map([["name", "张三"], ["title", "Author"]]);

    for (let item of map.entries()) {
      console.log(item[0], item[1]);
    }

    3、Let:

    *区别:

    1、let和var只在循环是,有不同点;

    2、var 声明的变量作用域不是块级的,会扩大变量的作用域,可能造成不必要的 shadow(变量覆盖),通常情况下都不是想要的结果;

    let 声明的变量作用域就更精确,离开作用域变量就销毁。

  • 相关阅读:
    Ext的组件结构分析(转)
    分析模式 责任模式
    Nhibernate学习起步之manytoone篇(转 明了篇)
    企业开发框架NHibernate和Spring.Net简介3
    企业开发框架NHibernate和Spring.Net简介4
    NHibernate Cascades: the different between all, alldeleteorphans and saveupdate
    XML与数据库
    企业开发框架NHibernate和Spring.Net简介1
    python对函数的理解
    seleniumwebdriver(python) (十五) 鼠标事件
  • 原文地址:https://www.cnblogs.com/babyfacer/p/5168618.html
Copyright © 2020-2023  润新知