ES6
2016-03-03 11:50:20 28 举报
AI智能生成
ES6,全称ECMAScript 2015,是JavaScript语言的一种标准规范。它于2015年发布,引入了许多新特性和语法糖,使得JavaScript编程更加简洁、高效和强大。其中最显著的特性包括箭头函数、解构赋值、模板字符串、类和模块等。此外,ES6还提供了许多实用的功能,如Promise、Map、Set等数据结构,以及for...of循环、let和const关键字等。通过使用ES6,开发者可以编写更易于维护、可读性更高的代码,提高开发效率。总之,ES6是现代JavaScript编程的重要组成部分,对于学习和掌握JavaScript语言具有重要意义。
作者其他创作
大纲/内容
let
let声明变量,只在let命令所在的代码块内有效,实际为js新增了块级作用域
let声明变量后不能变量提升,一个变量不能在同一个代码块中重复声明(会报错)
const
声明常量,一旦声明,其值不能改变(改变常量的值会不起作用),不可重复声明
class/extends/super
class
class 类(定义类),让原型的写法更加清晰
extends
Class(类)之间可以通过extends关键字实现继承
super
super关键字,指父类的实例(即父类的this对象)
子类必须在constructor方法中调用super方法,否则新建实例时会报错
ES6的继承机制,实质是先创造父类的实例对象this(必须先调用super方法),再用子类的构造函数修改this
arrow function(箭头函数)
箭头函数让function的写法更简洁清晰
使用箭头函数时,函数体内的this对象,就是定义时所在的对象,而不是使用时所在的对象
template string(模板字符串)
destructuring(解构赋值)
概念:ES6允许按照一定模式,从数组或对象中提取值,对变量进行赋值,这被称为解构
作用:1、交换变量的值;2、从函数返回多个值
如果解构不成功,变量的值为undefined,若对undefined或null进行解构,会报错
如果解构模式是嵌套的对象,而且子对象所在的父属性不存在,将会报错
对已声明的变量用于解构赋值,须注意,可用小括号()包起来
解构赋值允许指定默认值;适用于 var、let、const命令
注:数组的元素是按次序排列的,变量取值由其位置决定;对象的属性没有次序,变量必须与属性同名,才能取到正确的值
default
ES6允许设置默认值
默认值可以引用解构赋值的其他变量,但该变量必须已经声明
注:ES6内部使用严格相等运算符(===),判断一个位置是否有值。若一个数组成员不严格等于undefined,则默认值不会生效
rest参数
用于获取函数的多余参数,不需要用arguments对象
rest参数搭配的变量是一个数组,该变量将多余的参数放入数组中
字符串的扩展
字符的Unicode表示法
codePointAt()
能够正确处理4个字节储存的字符,返回一个字符的码点
String.fromCodePoint()
可以识别0xFFFF的字符,作用与codePointAt方法相反
for...of循环遍历
at()
返回字符串给定位置的字符。可以识别Unicode编号大于0xFFFF的字符,返回正确的字符
normalize()
用来将字符的不同表示方法统一为同样的形式,这称为Unicode正规化
includes()
返回布尔值,表示是否找到了参数字符串,区分大小写,支持第二个参数,表示开始搜索的位置
startsWith()
返回布尔值,表示参数字符串是否在源字符串的头部,支持第二个参数,表示开始搜索的位置
endsWith()
返回布尔值,表示参数字符串是否在源字符串的尾部,支持第二个参数,表示开始搜索的位置
repeat()
返回一个新字符串,表示将原字符串重复n次
参数如果是小数,会被取整,如果参数是0到-1之间的小数或NaN,则等同于0
如果repeat的参数是负数或者Infinity,会报错
如果repeat的参数是字符串,则会先转换成数字
padStart()
如果某个字符串不够指定长度,用于头部补全字符串
作用
数值补全指定位数
提示字符串格式
注意
如果原字符串的长度,等于或大于指定的最小长度,则返回原字符串;
如果用来补全的字符串与原字符串,两者的长度之和超过了指定的最小长度,
则会截去超出位数的补全字符串;
如果省略第二个参数,则会用空格补全长度;
padEnd()
如果某个字符串不够指定长度,用于尾部补全字符串
模板字符串
增强版的字符串,用反引号(`)标识,可在字符串中嵌入变量
模板字符串中嵌入变量,需要将变量名写在${}之中
分支主题 10
0 条评论
下一页