前端学习第二阶段Day14

目录

1.改变this指向的方法

 2.ES6新特性

        1.let 和 const 关键字

                1.声明变量

                 2.区别:

                3.应用场景:

        2.箭头函数

                语法:

                     简写:

                        4. 箭头函数this指向问题

        3.函数参数默认值

        4.解构赋值

                1.对象:

                2.数组

         5.模板字符串

        6.展开运算符

                可以把数组进行展开    ...arr输出是独立的部署数组

                 可以把对象展开

                参数调用

        7.对象字面量简写


1.改变this指向的方法

       【 附加在函数调用后面使用,可以忽略函数本身的this指向】

        1.call

        语法:

                函数名.call(要改变的this指向,要给函数传递的参数1,要给函数传递的参数2,......)

       

        2.apply

        语法:

        函数名.apply(要改变的this指向,[要给函数传递的参数1,2,......])

 

        3.bind

        语法:

                var newDirection=函数名.bind(要改变的this指向)

                newDirection(传递参数)

 2.ES6新特性

        1.let 和 const 关键字

                1.声明变量

                var num

                let num

                const num

                 2.区别:

                        let和var:

                                1.let 没有变量提升【预解析】---->必须先声明再使用

                                2.let 声明的变量不能重复

                                3.let具有块作用域--->具体的一个结构语句里----如:if for

                        let和const:

                                const声明的变量只能赋值一次,不能重复赋值

                3.应用场景:

                1.考虑兼容性问题用var

                2.不考虑低版本浏览器需多个变量声明时用let

                3.变量赋值一次后不再改变用const

        2.箭头函数

                是ES6里面一个简写函数的语法方式(匿名函数的书写),箭头函数只能简写函数表达式,不能简写声明式函数。

                语法:

                   function fun(){}声明式------>()=>{}

                   var fun=function(){}函数表达式----->var fun=()=>{}

                     简写:

                        1.形参只有一个,括号可以省略

                                (m)=>{} ==============------m=>{}

                         2.函数体只有一行代码 大括号可以省略

                        ()=>{console.log("111")}------------------()=>console.log("111")

                        3.如果只有一行代码 并且代码是return 语句 则大括号和return语句都可以省略

                      ()=>{return 100}-------------()=>100     

                        4. 箭头函数this指向问题

                                1.在事件处理函数中this->事件源

                                2.箭头函数中this指向 应用上下文中this对象

        3.函数参数默认值

                ES5的实现方式

                                m=m || 10

                ES6的实现方式

                        function fun(m=100){}

                        fun()

        4.解构赋值

                快速从对象或者数组中取出成员的一个语法方式

                1.对象:

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

                        let{name,age}=obj//解构对象赋值

                        注意:大括号中变量名必须与对象属性名相同

                2.数组

                        const arr=[1,2,3,4]

                        let{a,b,c,d}=arr

         5.模板字符串

                定义字符串时用反引号``和模板语法${}

        6.展开运算符

                ...

                可以把数组进行展开    ...arr输出是独立的部署数组

                const arr=[1,2,3,4]

                let arr1=[...arr,5]//合并数组

                let arr2=[...arr,arr1]

                 可以把对象展开

                        obj1

                        obj2={

                                ...obj1,

                                name:'wuYuLing'

                                }

                参数调用

                let arr=[1,2,3]

                function fun(a,b,c){}fun(...arr)

        7.对象字面量简写

                let name='wuYuLing'

                let age=18

                let obj={name,age}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值