C/C++教程

ES6(ECMAScript 6)

本文主要是介绍ES6(ECMAScript 6),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

1.1 什么是ECMA

ECMA(European Computer Manufacturers Association)中文名称为  欧洲计算机制造协会,这个组织的目标是评估,开发,和认可电信和计算机标准.1994年后该组织 改名为 Ecma国际.

1.2 什么是ECMAScript

  ECMAScript 是 JavaScript语言的标准

1.3 为什么要学习ES6

  • ES5语言的先天性不足。比如变量提升,内置对象的方法不灵活、模块化实现不完善等等
  • 为了后面vue、react等框架学习做准备
  • ES6是前端发展趋势,就业必备技能

2. ES6新特性

2.1 let关键字

let关键字 用来声明变量,使用let声明变量的特点:

1.不允许重复使用

2.{} 代表块级作用域,let有块级作用域,var只有函数作用域

3.没有域解析过程(既没有变量提升,var有变量提升)

2.2 const关键字

let关键字 用来声明变量,const声明有以下特点:

1.声明必须赋初始值

2.标识符一般为大写

3.不允许重复声明

4.值不允许修改

5.块儿级作用域

2.3 变量的解构赋值

ES6允许按照一定模式 从数组和对象中提取值,对变量进行赋值,这就被称为解构赋值.

2.3.1 数组的解构赋值

     const arr = ['张学友','刘德华','黎明','郭富城'];

        let[zhang,liu,li,guo]=arr;

        console.log(li);

2.3.2 对象的解构赋值

      const lin={

            name:"林志颖",

            age:23,

            tags:['车手','歌手','小旋风','演员']

        }

        let{name,age,tags:[a1,a2,a3,a4]}=lin;

        console.log(a3);

2.3.3 字符串的解构赋值

   const[a,b,c,d,e]='hello'

        console.log(a); //h

        console.log(d); //l

2.3.4 复杂解构

       let wangfei = {

            name:"王菲",

            age:19,

            songs:['红豆','流年','暧昧','传奇'],

            history:[{name:'窦唯'},{name:'李亚鹏'},{name:'谢霆锋'}]

        }

        let{name,age,songs:[a1,a2,a3,a4],history:[b1,b2,b3]}=wangfei;

        console.log(age);//19

        console.log(a2); //流年

        console.log(b1.name); //窦唯

2.4 字符串的扩展

2.4.1 确定字符串包含关系方法includes(), startsWith(), endsWith()

js中只有 indexOf方法 ,可以用来确定 一个字符串中是否包含在另一个字符串中

ES6 又提供了三种新方法:

1.includes() : 返回布尔值,表示是否找到了参数字符串.

   var s = 'hello world';

    console.log(s.includes('l')); //true

2.startsWith() : 返回布尔值,表示 参数字符串是否在源字符串的头部

    console.log(s.startsWith('h')); //true

    console.log(s.startsWith('l')); //false

3. endWith() 返回布尔值 表示 参数字符串是否在源字符串的尾部

    console.log(s.endsWith('l')); //false

    console.log(s.endsWith('d')); // true

2.4.2 重复字符串方法repeat()

repeat() 方法 返回一个新字符串 表示 将原字符串 重复 n次

console.log('a'.repeat(5)); // aaaaa

  • 如果参数是小数,会被向下取整
  • 如果参数是负数或者Infinity,会报错
  • 如果参数是0到-1之间的小数,则等同于0,因为先取整取到0
  • 参数NaN等同于0
  • 参数是字符串,则会先转换成数字

2.4.3 模板字符串

模板字符串 是增强型的字符串 用 反引号`` 表示 .特点:

1.字符串中可以出现 换行符

2.可以使用${xxx} 形式来输出变量

这篇关于ES6(ECMAScript 6)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!