网站首页 > 技术文章 正文
前言
在使用Vue或者React后,大家会发现ES6的语法已经成为了一种通用的规则。所以如果你还没有掌握ES6语法的话,在使用这些框架的时候,会觉得很吃力。
其实ES6有很多新特性,但是在使用上却不多,今天这篇文章我们就来看看ES6中使用比较频繁的新特性,我们先掌握这些部分就可以快速的上手项目了。
ES6
const和let
在ES5及之前的版本中,我们都是通过var来定义一个常量或者变量。但是由于在Javascript中存在变量提升的概念,函数中任何位置声明的变量都是被提到函数的顶部,我们看看下面的例子。
变量提升
上面的代码中,由于存在变量提升,同时由于Javascript是函数级作用域,变量v的定义会被提升到function的顶部,因此实际alert出的值为undefined。
ES6中新增的const和let关键字,在定义常量和变量时不会存在变量提升的情况,而且通过let或者const定义的值必须在声明后使用。
而且很重要的一点就是,const和let关键字定义的值是在块级作用域内部。有一道很经典的题目是,通过循环内部创建函数输出索引值。在ES5中一般通过闭包来做,而使用ES6直接通过let声明变量即可。
let
模板字符串
在ES5写法中,如果一段字符串中包含变量值的话,一般通过+号来拼接字符串。而在ES6中通过模板字符串可以很轻松实现这个功能。
模板字符串
模板字符串的第二个功能就是通过反引号(``)实现多行字符串输出。
多行字符串输出
函数默认参数
在ES6中给函数的参数提供了默认值,直接通过等号(=)赋值即为默认值。
函数参数默认值
箭头函数
ES6中的箭头函数应该是ES6新特性中使用最频繁的一种了,箭头函数表现为以下三个特点。
定义的函数不再需要function关键字
继承当前上下文的this
省略return关键字
箭头函数有几个常用写法,当函数中的参数只有一个时,可以省略掉括号;当函数返回只有一个表达式的时候可以省略大括号{}。
箭头函数
对象初始化
在ES5中定义一个对象时是通过键值对的方式,而且键名与值名都要书写,而在ES6中如果键值名相同的话,可以直接简写。
对象初始化
在ES5中,如果需要为一个对象添加方法需要通过function关键字,而在ES6中可以直接省略掉冒号与function关键字。如下图所示。
对象添加方法
解构
在ES6中新增了数组,对象,函数参数解构,非常方便用于信息的提取。
解构
展开运算符
展开运算符并不是ES6所特有的,在其他语言类似于Java中也存在,表示变长参数。
展开运算符频繁用于数组或者对象中,但是有一点需要主要的是,展开运算符必须用在最后一个元素上。
展开运算符
导入import和导出export
在目前流行的框架中,都是通过import和export关键字实现模块的导入和导出。其基本使用方法如下。
import和export
Promise
Promise是一种异步编程的解决方案,目前在一些主流的前端框架比如AngularJS,Vue,React中都使用了Promise,最常见的是HTTP请求后的响应是通过Promise实现的。
Promise
结束语
今天这篇文章主要总结了下ES6中比较常用的新特性,这些是我们必须掌握的,你学会了吗?
猜你喜欢
- 2025-05-26 ES6字符串的新特性及新增方法梳理
- 2025-05-26 ES6新增语法(七)——async...await
- 2024-09-24 前端ES6中Promise的运行原理
- 2024-09-24 「ES6基础」Object的新方法
- 2024-09-24 「ES6基础」const的用法
- 2024-09-24 「ES6基础」箭头函数(Arrow functions)
- 2024-09-24 前端关于ES6的面试题汇总含答案
- 2024-09-24 前端系列——ES6中的数据结构map和set
- 2024-09-24 前端ES6数组方法总结
- 2024-09-24 前端ES6中Promise的运行原理之进阶篇(一)
你 发表评论:
欢迎- 612℃几个Oracle空值处理函数 oracle处理null值的函数
- 603℃Oracle分析函数之Lag和Lead()使用
- 592℃0497-如何将Kerberos的CDH6.1从Oracle JDK 1.8迁移至OpenJDK 1.8
- 589℃Oracle数据库的单、多行函数 oracle执行多个sql语句
- 583℃Oracle 12c PDB迁移(一) oracle迁移到oceanbase
- 576℃【数据统计分析】详解Oracle分组函数之CUBE
- 566℃最佳实践 | 提效 47 倍,制造业生产 Oracle 迁移替换
- 558℃Oracle有哪些常见的函数? oracle中常用的函数
- 最近发表
-
- PageHelper - 最方便的 MyBatis 分页插件
- 面试二:pagehelper是怎么实现分页的,
- MyBatis如何实现分页查询?(mybatis-plus分页查询)
- SpringBoot 各种分页查询方式详解(全网最全)
- 如何在Linux上运行exe文件,怎么用linux运行windows软件
- 快速了解hive(快速了解美国50个州)
- Python 中的 pyodbc 库(pydbclib)
- Linux搭建Weblogic集群(linux weblogic部署项目步骤)
- 「DM专栏」DMDSC共享集群之部署(一)——共享存储配置
- 故障分析 | MySQL 派生表优化(mysql pipe)
- 标签列表
-
- 前端设计模式 (75)
- 前端性能优化 (51)
- 前端模板 (66)
- 前端跨域 (52)
- 前端缓存 (63)
- 前端aes加密 (58)
- 前端脚手架 (56)
- 前端md5加密 (54)
- 前端路由 (61)
- 前端数组 (73)
- 前端js面试题 (50)
- 前端定时器 (59)
- 前端获取当前时间 (50)
- Oracle RAC (76)
- oracle恢复 (77)
- oracle 删除表 (52)
- oracle 用户名 (80)
- oracle 工具 (55)
- oracle 内存 (55)
- oracle 导出表 (62)
- oracle约束 (54)
- oracle 中文 (51)
- oracle链接 (54)
- oracle的函数 (58)
- 前端调试 (52)
本文暂时没有评论,来添加一个吧(●'◡'●)