美文网首页
ECMAScript 6学习笔记(上)

ECMAScript 6学习笔记(上)

作者: czgedu | 来源:发表于2017-03-29 08:48 被阅读0次

    一,ECMAScript 6简介

    ECMA6是2015年6月出版的关于ECMAScript的新版本,ES6是继ES5之后的一次主要改进,也称之为ECMA2015。

    ECMAScript 6 特点

    ES6增添了许多必要的特性,例如模块和类,块级作用域,常量与变量。

    如果在浏览器中使用es6大部分语法无法使用,一部分是因为未实现,一部分需要特定的环境。

    在chrome下使用es6为保证可以正常使用大部分语法,需要使用严格模式,即在js开始部分加上'use strict'

    在firefox下使用es6为保证可以正常使用大部分语法,需要知道测试版本,即在script标签的type属性中加上“application/javascript;version=1.7”属性值

    二,let 声明变量特点

    // 1,let 在同一作用域下,同一变量仅支持声明一次。

    // 2,let 在未声明前,不能进行访问,即无var 声明变量的预解析过程。

    // 3,形成块级作用域 {} 之间的作用域 代码块

    应用例子,循环输出0·9数字:

    {}中是一个代码块,形成独立作用域。

    // let 声明变量的形成的作用域块称 暂存死区 

    三,coust  声明常量

    1.const 声明常量,无域解析过程。

    2,const 声明常量时,声明同时要赋值,否则报错

    2.const 声明的常量,存储数据类型为简单数据类型,不能修改,但复杂数据类型或者说按按址传递的可以修改,即数组和对像可以被修改。

    复杂数据类型修改正常:

    四,解构赋值

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

    对象的解构赋值,变量名和属性名一一相对赋值。

    数组的解构赋值,按照顺序一一对应。

    数组对像混合式解构赋值

    注:数组对像混合式解构时,不同数据元素中对像属性名称相同会发生赋值覆盖。

    五,字符串相关

    JavaScript内部,字符以UTF-16的格式储存,每个字符固定为2个字节。对于那些需要4个字节储存的字符(Unicode码点大于0xFFFF的字符),JavaScript会认为它们是两个字符。

    str.codePointAt(index)

    获取str中index位置上的字符的编码,可以获取四个字节的字符

    String.fromCodePoint(unicode)

    根据unicode编码转换成对应的字符,可以操作码点大于0xFFFF的字符


    JavaScript允许采用“\uxxxx”形式表示一个字符,其中“xxxx”表示字符的码点。

    "\u0062" unicode表示法 \u表示unicode 后边的数字是unicode码点。

    但是,这种表示法只限于\u0000——\uFFFF之间的字符。超出这个范围的字符,必须用两个双字节的形式表达。

    ES6对这一点做出了改进,只要将码点放入大括号,就能正确解读该字符。


    /*

        str.repeat(num)

        把str复制num份,并范围。

    */

    var str = 'zgedu';

    console.log(str.repeat(2));// zgeduzgedu

    str.includes()

    参数: 1、要查找的字符串  2、起始位置  返回布尔值,表示是否找到了参数字符串

    str.startsWith()

    参数:1、要查找的字符串     2、起始位置   返回布尔值,表示参数字符串是否在源字符串的头部。

    str.endsWith()

    参数: 1、要查找的字符串2、起始位置(针对的是n个字符)返回布尔值,表示参数字符串是否在源字符串的尾部。

    模板字符串(template string)是增强版的字符串,用反引号(`)标识。它可以当作普通字符串使用,也可以用来定义多行字符串,或者在字符串中嵌入变量。

    相关文章

      网友评论

          本文标题:ECMAScript 6学习笔记(上)

          本文链接:https://www.haomeiwen.com/subject/xateottx.html