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

ES6的基础用法

本文会着重讲解es6,帮助大家熟悉es6和掌握es6的写法

1,let

        没有变量提升,使用变量在变量定义之前,这点和var有很大区别

        不允许重复声明

        只在块级作用域里有效

        暂时性死区

        console.log(a)  //报错,因为在未定义前调用let a = 1console.log(a) //1

  2,const

        声明常量 ,表示这个变量在声明后就无法修改

const a = 1
a = 2 //报错,常量声明后无法修改

3,解构赋值

      将右边的数组依次解构出来赋值给前面的数组里的变量

let [a,b,c]=[1,2,3] 
const.log(a) //1
const.log(b) //2
const.log(c) //3

 4,扩展字符串

        可以在字符串里直接写入变量,${},不用在像以前一样通过加号来拼接了

let a = "张三"
console.log(`我是${a}`) // 我是张三

5,解构

       

        数组解构:通过  ...数组  将数组的每一项都解构出来,变成原本的数据类型1

let a = [1,2,3,4]
console.log(...a) //1234

        对象解构:通过 {...对象} ,将对象里的每一项都解构出来,但是要注意下,对象解构出来还是对象,所以我们必须得在最外出用{}包裹

        

const obj = {name:"张三",age:18}console.log({...obj}) //{name:"张三",age:18}修改name的值const obj1 = {...obj,name:"李四"}console.log(obj1)//{name:"张三",age:18}原理就是,先解构,在对象里在加入一个属性名称相同的值,后覆盖前,达成修改的效果

6.对象扩展

         对象的属性名如果和属性值变量名称是一致的话可以简写

var a=1
var  obj = {a:a}
可以简写为 var obj = {a}  console.log(obj) //{a:1}

        如果对象的属性值是函数,可以省略function

var obj = {fh:function(){}}可以简写为
var obj  =  {fn(){}}

        在函数上做解构赋值

var obj  = {name:"张三",age:18}
function fn (naem,age){console.log(name,age)
}
调用函数
fn(obj) //"张三",18    。。直接传入一个对象,函数帮我解构了,相当于传入了 fn(obj.name,obj.age),
要注意的是,形参必须和我们对象的属性一样才可以

7.set

        类似于数组,但不是数组,set有个属性,就是里面的数据不能重复所以可以用来给数组去重

var a = [ 1,2,3,4,4]
var b = new Set(a)
在进行解构重新赋值给一个数组,这样就达到了去重的效果var c  = [...b]console.log(c)// [1,2,3,4]

      可以通过add方法添加属性

var a = new Set([1,2,3])
a.add(3).add(5)console.log(a) //[1,2,3,4,5] //添加的时候,如果添加了重复的值,会自动去重

8.map

        map方法,将属性里的每一项单独拿出来,执行回调函数

        

var arr = [1,2,3,4]
arr.map((item)=>{  //item就相当于数组里的每一项的值,所以会依次打印 1,2,3,4
console.log(item)
})

9.promise 异步处理

        处理异步代码

let p=new promise(function(resolve,reject){ //传入参数resolve和reject,这2个是固定写法resolve(data) //调用resolve函数,传入我们要异步处理的数据,异步代码执行成功调用reject(data) //调用reject函数,传入data,异步代码执行失败调用})p.then(function(data){  //调用.then方法,方法里接收一个函数,函数接收的参数就是我们在上面resolve传递的值console.log(data)},(data)=>{console.log(data)  //当执行错误时就执行这个函数
}) //.then方法里接收2个函数,第一个函数是执行成功后执行,第二个函数是执行失败后执行,这样就能对异步进行处理了,当异步执行完后,才会执行.then方法里的代码。

10.async和await 

        也是用来处理异步

async  function sc(){  //在函数前加上async,将这个函数变为异步函数await 异步代码  //这里写异步代码,注意异步代码前面要加await,才能生效console.log(123) //当前面的异步代码执行完成后,才会执行console.log(),这样就实现了对异步的处理}

http://www.lryc.cn/news/222516.html

相关文章:

  • standard_init_linux.go:211: exec user process caused “exec format error“
  • python的format函数的用法及实例
  • BigDecimal 类型的累加操作
  • 基于单片机的土壤温湿度控制系统
  • 服务器数据库中了elbie勒索病毒怎么办,elbie勒索病毒解密,数据恢复
  • 接口测试及接口测试工具
  • JUC包工具类介绍二
  • 第8章_聚合函数
  • Mysql8与mariadb的安装与常用设置
  • 深入剖析Golang中单例模式
  • Java之SpringCloud Alibaba【八】【Spring Cloud微服务Gateway整合sentinel限流】
  • 深入解析 Redis 分布式锁原理
  • [unity]多脚本情况下update函数的执行顺序
  • Maven中<scope>中等级的区别
  • 小明和完美序列(HashMap、Map、Entry)
  • 【hexo博客配置】hexo icarus主题配置
  • 建表时如何合理选择字段类型
  • Qt Creator插件
  • AI全栈大模型工程师(十九)Semantic Kernel
  • Dubbo 的服务请求失败怎么处理?
  • 存储虚拟化讲解
  • [云原生案例2.1 ] Kubernetes的部署安装 【单master集群架构 ---- (二进制安装部署)】节点部分
  • Apache ActiveMQ 远程代码执行漏洞影响范围
  • 如何规划并新建大数据平台的独立生产域?5步走
  • 工程车云管家|叉车智能管家安卓主板方案
  • 大数据学习之Spark性能优化
  • 个人服务器到期,项目下线,新的开始
  • arcgis 网络分析 生成可达范围/等时线
  • npm切换镜像源
  • Python简单学习