ES6新语法

var let const
           =>声明变量
              =>不重复  
              =>let 声明的变量没有变量提升,必须先声明在使用
              =>let const 块作用域

            
            全局作用域
            局部作用域
            块作用域
               function fn(){
                   var num = 100
               }
               var num = 200
           
            const 与 let 区别:
              const声明变量只能赋值一次,称为常量

 // let num = 100
        // let num = 200 //Identifier 'num' has already been declared

        // let num = 100
        // console.log(num); //Cannot access 'num' before initialization


let num = 100
        if(true){
            num = 300
        }

        function fn(){
            let num = 400

        }

箭头函数

 箭头函数
          => 简化函数声明写法
          => 赋值式函数定义
              const fn = function(){}
              function fn(){}
          => 语法:
              (形参)=>{函数体执行代码}

              const fn = function(){}
              const fn = ()=>{}
          => 特殊写法
             1. 函数体执行代码只有一行,大括号可以不写
             2. 函数体执行代码只有一行代码并且有返回值时,大括号和return都可以不写
             3. 形参只有一个时,括号可以不写
          
          => this关键字
              箭头函数中this指向应用上下文


const fn1 = function (a, b) {
            console.log('赋值式函数', a, b);
        }

        //箭头函数
        const fn2 = (a, b) => {
            return a + b
        }

        const fn3 = (a,b) => a + b

        // 1. 函数体执行代码只有一行是,大括号可以不写
        const fn = (a, b) => console.log('箭头函数', a, b);

        // fn(11, 21)
        let sum = fn3(11,21)
        console.log(sum);

        const fun = a => a

        // const fun = (a) => {
        //     return a
        // }

        let m = fun(100)
        console.log(m);
箭头函数中this指向应用上下文

const obj = {
            name: 'jack',
            say: function () {
                console.log('obj say this->', this);
            }
        }	整个对象

        const obj1 = {
            name: 'rose',
            say: () => {
                console.log('obj say this->', this);
            }
        }	window对象
默认函数值
 const fn = (a = 10)=>{
            // a = a || 10
            console.log(a);
        }

        // fn(10)
        fn(20)
        默认10 传实参20
解构赋值
<title>解构赋值</title>
</head>
<body>
    <script>
        const obj = {
            name:'jack',
            age:20
        }
        // let name = obj.name
        // let age = obj.age

        let {name,age} = obj

        console.log('name ',name, ' age ',age);

        const arr = ['jack','rose','tom']
        let [a,b,c] = arr
        console.log('a :',a , ' b :',b , ' c ',c);
展开运算符

const arr = [1,2,3,4]
        // console.log(...arr);

        const arr1 = [5,6]

        // [1,2,3,4,5,6]

        const arr2 = [...arr,...arr1]

        console.log(arr2);

        const obj = {
            name:'jack',
            age:20
        }

        const obj1 = {
            ...obj,
            gender:'男'
        }

        console.log(obj1);
字面量简化写法

let name = 'rose'
        let age = 20

        let obj = {
            name: name,
            age: age
        }
        let obj1 = {name,age}


        console.log(obj1);
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值