ECMAScript(es6)

1.es5 严格模式

  1. 如何使用? 在script标签第一行添加 'user strict' 字符串
  2. 必须使用var声明变量
  3. 禁止自定义函数中this指向window
  4. 创建eval作用域
  5. 对象能有重名属性
  6. 声明变量必须用var

2.json格式扩展

  1. JSON.stringify(obg/arg) --js对象转换为json对象
  2. JSON.parse(json) --json对象转换位js对象

3.数据扩展

4.call apply bind用法详解

  1. 作用 Function.prototype.bind(obj) --讲函数内的this绑定位obj
  2. 区别:call()/apply()都是立即调用函数,bind()是讲函数返回
  3. call和apply的区别: call(obj,arg1,arg2,arg3) / apply(obj,[arg1,arg2,arg3])
  4. bind和call传参方式一样
  5. setTimeout(function(){ console.log(this) }.bind(obj),100) --bind改变setTime中匿名函数的this

5.let const关键字

  1. let 块级作用域

6.模板字符串

  1. 语法: 在字符串中使用变量只需用`${}括起来

7.解构赋值

  1. let obj={name:'zhangsan',age:'16'}
  2. let {name,age}=obj //成功给name age赋值

8.对象的简写方式

  1. let name ='zhangsan'
    let obj={name,age}
    当键的名称和值的名称一样时,可以合并成一个
  2. console.log(obj.name)输出: zhangsan

9.箭头函数

  1. ()=>{}
  2. age=>{} 当参数只有一个的时候,小括号可以省略
  3. age=> console.log(age)函数体只有一条语句或者表达式的时候,大括号可以省略
  4. console.log(age=>age+10) 函数体只有一条语句或者表达式的时候返回值就是这一条语句或表单氏
  5. 箭头函数中的this相当于定义时候父级的this

10.三点运算符

  1. function test(a,b,...c){ console.log(c)} test(1,2,3,4,5,6,7) 结果输出3 4 5 6 7

11.形参默认值

  1. function test(a=10,b=12){ console .log(a,b)} test() 输出: 10 12

12.promise对象

  1. 为什么要使用promise
    解决 (回调地狱)

  2. promise的使用

     <script>
            function getNews(url) {
                let promise = new Promise((resolve, reject) => {
                    //ajax...
                    let xmlHttp = new XMLHttpRequest();
                    xmlHttp.onreadystatechange = function () {
                        if (xmlHttp.readyState == 4) {
                            if (xmlHttp.status == 200) {
                                console.log(xmlHttp.responseText);
                                resolve(); //表示执行成功
                            } else {
                                reject(); //失败
                            }
                        }
                    }
                    xmlHttp.open('get', url)
                })
                return promise;
            }
            getNews('http://localhost:8080/test/getnews?nid=1').then((data) => {
                //newsajax执行成功
                //获取数据
                console.log(data);
                //获取文章信息 如果return一个 resolve()后的promise对象 执行下面的ten
                return getNews('localhost:8080/.......');
            }, () => {
                //失败
            }).then((data) => {
                //评论ajax执行成功
            }, () => console.log('失败'))
        </script>
    

13.for of的使用

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值