zoukankan      html  css  js  c++  java
  • ES6补充

    1、块级作用域

    变量作用域: 变量在什么范围内是可用的


    没有块级作用域引起的问题:for的问题

    var btns = document.getElementsByTagName('button');
    for(var i=0;i<btns.length;i++){
      btns[i].addEventListener('click',function () {
        console.log("第"+i+"个按钮被点击!");
      })
    }

    无论点击哪个按钮,打印的都是

    clipboard


    通过闭包来解决for问题

    为什么闭包可以解决问题:函数是一个作用域

    var btns = document.getElementsByTagName('button');
    for(var i=0;i<btns.length;i++){
      (function (i) {
        btns[i].addEventListener('click',function () {
          console.log("第"+ (i+1) +"个按钮被点击!");
        })
      })(i)
    }

    clipboard


    2、const关键字

    什么时候使用const:

    当我们修饰的标识符不需要再次被赋值时,就可以使用const来保证数据的安全性


    const使用的注意点:

    //1、一旦给const修饰的标识符被赋值之后,不能修改
    const name = 'why';
    //name = 'houchen';
    
    //2、const定义标识符,必须进行赋值
    //const name1;
    
    //3、常量的含义是指向的对象不能修改,但是可以改变对象内部的属性
    const obj = {
      name: 'houchen',
      age: 19
    }
    obj.age=20;
    console.info(obj);


    3、ES6对象字面量增强写法

    使用对象字面量语法来定义对象

    const obj = {
      name: 'houchen',
      age: 20,
      run: function () {
        console.log("奔跑吧!");
      }
    }


    对象字面量增强写法:

    属性增强 + 函数增强

    const name = 'houchen';
    const age = 20;
    
    const obj = {
      name,
      age,
      run(){
        console.log("奔跑吧");
      }
    }
  • 相关阅读:
    Linux中批量添加文件和修改文件小笔记
    scp 命令快速使用讲解
    使用Apache Spark 对 mysql 调优 查询速度提升10倍以上
    阿里云CentOS-7.2安装mysql
    yum安装网络配置图形界面
    忘记了root密码,如何进入系统?
    Linux学习之竿头直上
    Linux命令之初出茅庐
    Linux学习之要点必备
    阿里云CentOS7.2服务器的安装
  • 原文地址:https://www.cnblogs.com/houchen/p/14410482.html
Copyright © 2011-2022 走看看