当前位置: 首页 > news >正文

学习笔记(13)ES6新特性

目录

  • 1,let和const
  • 2,字符串模板
  • 3,解构赋值
    • 3.1,对象解构赋值
    • 3.2,数组解构赋值
    • 3.3,函数参数解构赋值
  • 4,Symbol
  • 5, 箭头函数
  • 6,for of
  • 7,class类
  • 8,导入导出
  • 9,Promise
  • 10,async/await

1,let和const

let声明的变量是块级作用域,作用域仅在当前的代码块中。

if (5>3) {
	let a =10;
}
// console.log(a);// a is not defined

const:常量声明,声明之后只能被赋值一次。

2,字符串模板

使用反撇号(``)声明字符串插值模板,在字符串插值模板中可以使用${}插入一个变量的值,可以直接输入回车和双引号等特殊字符。

let name='king';
let age =21;
let str1 =`我叫${name},今年${age}`;
console.log(str1);  //=我叫king,今年21岁

3,解构赋值

3.1,对象解构赋值

对象的解构赋值,可以将对象中的属性赋值给若干个变量。

let obj = {
    date: '2021',
    address: '郑州',
    people: 'king'
}

/* 解构赋值 */
let {people,time,address} =obj;
console.log(people);//king

3.2,数组解构赋值

let arr =['苹果','香蕉','橘子'];

/* 解构赋值 */
let [a,b,o] =arr;
console.log(a)  //苹果

3.3,函数参数解构赋值

函数参数进行结构赋值,当函数的参数是一个对象时,可以直接在形参列表中进行解构,并且可以设置某个参数的默认值。

function f1({ a, b, c = 10, d }) {
    console.log(a);
    console.log(b);
    console.log(c);
    console.log(d);
};

f1({ a: 1, b: 5, d: 4 })   //1,5,10,4

4,Symbol

表示独一无二的值,最大的用法是用来定义对象的唯一属性名。

5, 箭头函数

不需要function关键字来创建函数,省略 return 关键字,this始终指向函数申明时所在作用域下的this值。

//es5
var fun = function() {

}

//es6,箭头函数
var fn = () => {

}

6,for of

for of遍历的是键值对中的值
for in遍历的是键值对中的键

7,class类

ES6 中支持 class 语法,不过,ES6的class不是新的对象继承模型,它只是原型链的语法糖表现形式。

class Car{
  constructor() {
    console.log("this is a car");
  }
 
  color() {
    console.log('black');
  }
 
  state() {
    console.log("It's moving now");
  }
}
 
console.log(typeof Car); // function
let HQ = new Car(); 
HQ.color(); // "black"
HQ.state(); // "It's moving now"

8,导入导出

导入improt
导出export default

9,Promise

点击前往Promise笔记页面

10,async/await

比promise更好的解决了回调地狱。

async function() {
  awiat fn()
}

相关文章:

  • vue2 项目中引入iconfont
  • 手把手教你深度学习和实战-----循环神经网络(RNN、LSTM)
  • 西宾猫耳下载工具(missevandown)
  • 【C++项目】boost搜索引擎
  • 9.5-9.9 小知识点
  • 【流行框架】SpringMVC
  • Linux命令之chage命令
  • java导出功能(多个sheet页数据导出)
  • 力扣系列题,回溯专场
  • 在windows桌面上部署网站
  • 8月更新 | Visual Studio Code Python
  • 猿创征文 |【算法面试入门必刷】动态规划-线性dp(一)
  • 一整套美团面经(给对象超用心整理的)
  • 【机器学习】鸢尾花数据的基本信息 || sklearn
  • Opencv项目实战:07 人脸识别和考勤系统
  • ES6系统学习----从Apollo Client看解构赋值
  • gf框架之分页模块(五) - 自定义分页
  • Java 多线程编程之:notify 和 wait 用法
  • JavaScript 基本功--面试宝典
  • Linux CTF 逆向入门
  • orm2 中文文档 3.1 模型属性
  • PhantomJS 安装
  • Redux系列x:源码分析
  • Sass 快速入门教程
  • Vue.js 移动端适配之 vw 解决方案
  • Webpack 4x 之路 ( 四 )
  • 服务器之间,相同帐号,实现免密钥登录
  • 前端知识点整理(待续)
  • 如何选择开源的机器学习框架?
  • 深度学习在携程攻略社区的应用
  • 以太坊客户端Geth命令参数详解
  • 【运维趟坑回忆录 开篇】初入初创, 一脸懵
  • 容器镜像
  • ​Base64转换成图片,android studio build乱码,找不到okio.ByteString接腾讯人脸识别
  • ​ssh-keyscan命令--Linux命令应用大词典729个命令解读
  • !!Dom4j 学习笔记
  • $(function(){})与(function($){....})(jQuery)的区别
  • (Python) SOAP Web Service (HTTP POST)
  • (solr系列:一)使用tomcat部署solr服务
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (力扣记录)1448. 统计二叉树中好节点的数目
  • (力扣记录)235. 二叉搜索树的最近公共祖先
  • (亲测)设​置​m​y​e​c​l​i​p​s​e​打​开​默​认​工​作​空​间...
  • (心得)获取一个数二进制序列中所有的偶数位和奇数位, 分别输出二进制序列。
  • (转)memcache、redis缓存
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • .equal()和==的区别 怎样判断字符串为空问题: Illegal invoke-super to void nio.file.AccessDeniedException
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .NET Windows:删除文件夹后立即判断,有可能依然存在
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • .NET开发不可不知、不可不用的辅助类(三)(报表导出---终结版)
  • .Net中wcf服务生成及调用
  • ??myeclipse+tomcat
  • @SuppressWarnings注解