ES6语法概述

一.ES6的介绍

ECMAScript与JavaScript的关系 前者是后者的规格,后者是前者的实现

ES6: 代码简洁 浏览器兼容性很差

ES5:代码复杂 浏览器兼容性很好

es6是一套标准,javascript 很好的遵循了这套规范

 

二.ES6的语法

var和let的区别

1.定义变量

①.作用范围不同 let作为变量有作用范围

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //var 声明的变量往往会越域
        //let 声明的变量会有严格局部作用域

        //创建代码块,定义变量
        {
        var a=1;
        let b=2;
        }

        //2.在代码块 外面输出
        console.log(a)
        console.log(b)
    </script>
</body>
</html>
 

 

②.let不能多次定义相同名称的变量

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>
        //同一个变量,var可以声明多次 let只能声明一次
        var m=1
        var m=2
        let n=3
        let n=4

        console.log(m);
        console.log(n);
        
        
    </script>
</body>
</html>

 

③ 变量提升 即先使用再声明

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <script>

        //var 会变量提升 let不存在
       console.log(x);
       var x=10;

       console.log(y);
       let y=10;

       
       
    </script>
</body>
</html>

 

3.定义常量

 

<script>

    //定义常量

   const PI="3.1415926"

    //常量一旦定义,不能改变

   PI=3;

 

   //定义常量必须初始化

   const AA

 

</script> 

 

4.数组的解构

 

<script>

    //传统写法

    let a=1,b=2,c=3

    console.log(a,b,c);

 

    //es6写法

    let[x,y,z]=[10,20,30]

      console.log(x,y,z);

      

    </script>

 

5.对象的解构

<script>

    //定义对象

    let user={"name":"lucy","age":20}

 

    //传统从对象里面获取值

    let name1=user.name

    let age1=user.age

    console.log(name1+"=="+age1);

 

    //es6写法

    let{name,age}=user

    console.log(name+"=="+age);

    

</script>

 

6模板字符串`

<script>

    //1.使用`符合实现换行

    let str1=`hello,

    es6 demo up!`

    console.log(str1);

    

    //2.在`符号里使用表达式获取变量值

    let name="Mike"

    let age=27

 

    let str2=`hello,${name},age is ${age+1}`

    console.log(str2);

 

    //3.在`符合调用方法

    function f1(){

        return "hello f1"

    }

 

    let str3=`demo,${f1()}`

    console.log(str3);

    

</script>

 

声明对象

<script>

   const name=12

   const age="lucy"

 

   //传统方式定义变量

    const p1={name:name,age:age}

    console.log(p1);

  

   //es6定义变量

  const p2={name,age}

  console.log(p2);

 

</script>

 

 

<script>

  //1.对象复制

  let person1={"name":"lucy","age":20}

  let person2={...person1}

  console.log(person2);

 

 

  //2.合并对象

  let age={age:15}

  let name={name:"Amy"}

  let person3={...age,...name}

  console.log(person3);

  

</script>

 

箭头函数

 

<script>

    //基本语法 参数=>函数体

 

    //传统方式

    var f1=function(m){

        return m;

    }

    console.log(f1(2));

   

     //使用箭头函数改造

    var f2=m=>m

    console.log(f2(8));

</script>

 

 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值