• ES6记录


    let     //局部变量
    const //声明变量,但是声明的是常量。一旦声明,常量的值就不能改变。

    let

    局部声明变量,不存在变量提升,不允许重复声明,块级作用域

    
    

    const命令

    const也用来声明变量,但是声明的是常量。一旦声明,常量的值就不能改变。

    跨模块常量

    // constants.js 模块
    export const A = 1;
    export const B = 3;
    export const C = 4;
    
    // test1.js 模块
    import * as constants from './constants';
    console.log(constants.A); // 1
    console.log(constants.B); // 3
    
    // test2.js 模块
    import {A, B} from './constants';
    console.log(A); // 1
    console.log(B); // 3
    

      

    类(class)

    class Animal {
        // 构造方法,实例化的时候将会被调用,如果不指定,那么会有一个不带参数的默认构造函数.
        constructor(name,color) {
          this.name = name;
          this.color = color;
        }
        // toString 是原型对象上的属性
        toString() {
          console.log('name:' + this.name + ',color:' + this.color);
    
        }
      }
       
     var animal = new Animal('dog','white');
     animal.toString();
    
     console.log(animal.hasOwnProperty('name')); //true
     console.log(animal.hasOwnProperty('toString')); // false
     console.log(animal.__proto__.hasOwnProperty('toString')); // true
    
     class Cat extends Animal {
      constructor(action) {
        // 子类必须要在constructor中指定super 方法,否则在新建实例的时候会报错.
        // 如果没有置顶consructor,默认带super方法的constructor将会被添加、
        super('cat','white');
        this.action = action;
      }
      toString() {
        console.log(super.toString());
      }
     }
    
     var cat = new Cat('catch')
     cat.toString();
     
     // 实例cat 是 Cat 和 Animal 的实例,和Es5完全一致。
     console.log(cat instanceof Cat); // true
     console.log(cat instanceof Animal); // true

      

     

    Module

    //test.js
     var name = 'Rainbow';
     var age = '24';
     export {name, age};
    
    
      //index.js
     import {name, age} from './test.js'
    
    
    
    整体输入,module指令
    
      export function getName() {
        return name;
      }
      export function getAge(){
       return age;
      } 
    
    import * as test form './test.js';
    
    module test from 'test.js';
     test.getName();
    
    
    export default
    
      // default 导出
      export default function getAge() {} 
     
      // 或者写成
      function getAge() {}
      export default getAge;
    
      // 导入的时候不需要花括号
      import test from './test.js';
    

      

     
  • 相关阅读:
    直接插入排序
    合并排序--分治法思想
    scanf printf函数返回值
    转自CSDN,关于状态机
    关于制表符
    网上找的一篇博文,原文搞错了,应该是 ,本文已改正!——回车CR和换行line feed
    再看c语言之getchar/putchar
    使用FL2440之问题1
    Java:String、StringBuffer和StringBuilder的区别
    编译哈工大语言技术平台云LTP(C++)源码及LTP4J(Java)源码
  • 原文地址:https://www.cnblogs.com/wuye1200/p/5404658.html
Copyright © 2020-2023  润新知