美文网首页
ES6新语法

ES6新语法

作者: Riya | 来源:发表于2021-05-15 11:16 被阅读0次

    一、字符串拼接(ES6)

    1.传统方法

    使用+

    2.模版拼接(ES6新方法)

    使用${str1}拼接,可支持换行,html标签解析不出来

    注意:

    1. 将要输出的拼接好的大段字符串使用反引号包裹起来
    2. 若要在模版中使用函数,那么一定要写返回值(return)才会有输出,在函数中直接输出,会是undefined


    2.箭头函数(ES6)

    1. 传统赋值式函数

    var fn = function(){}

    2. 箭头函数(ES6)

    语法:var 变量名 = (形参1,形参2)=>{函数体}

    当只有一个形参时,可省略()
    函数体只有一个表达式时,可省略{},此时隐藏return; 不推荐
    箭头函数不能先调用再声明

    使用场景(能使用function的地方都能使用箭头函数)
    1.事件的回调函数(js动态绑定),this指向window
    2.forEach循环时使用 books.forEach(v=>{ })
    3.在定时器中使用 setInterval(() => { },1000)
    
    this指向
    1.行内绑定->window
    2.js动态绑定->window
    3.函数->window
    4.定时器->当前宿主对象
    

    解构赋值(ES6)

    定义:将数组或对象的元素,赋值给相应变量

    变量和元素之间是位置对应的关系
    对象中,变量名和属性名要保持一致

    使用
    • 数组:var books=['b1','b2','b3'] ; let [books1,books2,book3]=books;

    • 对象: var obj = {name : 'zs', say(){ }}; var {say} = obj;

      • 通过给对象解构赋值可以将对象中的个别方法单独解构出来
        比如Math中的random方法,解构后可直接使用random()调用

    Symbol(ES6)

    任何两个Symbol的值都不相等

    Symbol是一种新的数据类型


    Set(ES6)

    使用: let set = new Set([1,2,3,4,'4',3]);

    \color{#DC143C}{Set方法默认去除数组重复值,重复的标准是全等,对象不能去重}

    属性:
    • 返回set对象中值的个数 set.size;
    方法:
    • 在对象末尾添加元素:set.add('a');
    • 移除set中所有元素:set.clear();
    • 移除set中特定元素:set.delete('a');
    • 判断元素是否存在set中,返回bool值set.has('a');
    • 遍历:set.forEach((v)=>{console.log(v)})

    Map(ES6)

    语法:let map = new Map();
    存:map.set('name','zs'); map.set('age',23);

    注意:键值对之间用逗号隔开,不是冒号,键要用引号包裹起来

    取:map.get('name'); //zs 取出对应属性中的值
    遍历1:
    for(let attr of map){  
                        console.log(attr);  
                  }
    

    此时遍历的为map中的对象

    遍历2:
    for(let [key,value] of map){ 
                 console.log(key,value);
                } 
    

    此时遍历的为map中的每一对键值对,key为属性,value为对应的值


    bind(ES6)

    bind(方法)返回新函数,并改变新函数中的this指向,this指向bind第一个参数。
    使用

    函数.bind(this指向,函数参数...)

    相关文章

      网友评论

          本文标题:ES6新语法

          本文链接:https://www.haomeiwen.com/subject/mcphjltx.html