14-es6新特性

改变this指向

        + 事件处理函数中this -> 事件源

        + 普通函数中this -> window

        + 定时器this -> window

        + 自调用函数 this -> window

                   (function(){                

                                函数体

                        })()

        + 对象Object方法中this -> 当前对象-> 调用该方法的引用变量指向的对象

        函数方法call方法

                函数名.call(this指向的新对象,参数1,参数2...)

                对象方法.call(this指向的新对象,参数1,参数2...)

            apply方法

                函数名.apply(this指向新对象,[参数1,参数2...])

                对象方法.apply(this指向新对象,[参数1,参数2...])

            bind方法

                var 新函数 = 函数名.bind(this指向新对象)

                var 新函数 = 对象方法.bind(this指向新对象)

                        新函数(参数1,参数2)

let 和 const 关键字

        1. let 和 const 关键字

                声明变量

                var num

                let num

                const num

        2. 区别

                let 和 var

                        1.let没有变量提升(预解析) let声明变必须先定义再使用

                                console.log(num)

                                var num = 100

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

                                var num = 100

                                var num = 200

                        3. let具块作用域

                                全局作用域

                                局部作用域

                                块作用域 let

                const 和 let

                        const声明的变量称为常量,只能赋值一次

                        const num = 100

                        num = 200 x 报错

        3. 应用场景

                1.考虑兼容问题

                        使用var

                2. 变量可以多次改变值

                        let

                3. 变量只赋值一次后,不再改变

                        const

                const button = document.quererySelctor('button')

箭头函数

        function fn(){} 声明式

        var fn = function(){} 函数表达式

        作用:简化函数(匿名函数)的书写

        语法:

                ()=>{}

                function(){

                }

        简写:

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

                        (m)=>{}

                        m => {}

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

             () => {console.log('>>>')}

                        () => console.log('>>>')

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

                        ()=> {return 100}

                        () => 100

函数传递参数的时候的默认值

        ES5 实现方式

                m = m || 100

        ES6 实现方式

                function fun(m = 100){}

解构赋值

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

        let { name, age } = obj

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

展开运算符

        let arr = [1,2,3]

        ...arr -> 1, 2, 3

        作用: 数组合并

对象字面量简写

        对象属性名和值变量名相同是,只写一个

            let name = 'jane'
			let age = 28

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

			console.log(obj) // {name: 'jane', age: 18}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值