zoukankan      html  css  js  c++  java
  • ES6常用方法总结

    1、声明变量用let,声明常量用const(定义唯一的值),都没有预解释,也不存在变量提升;

    2、箭头函数:有如下两种写法

        1)、表达式(函数体只有一行代码)

           a)、let fn = p => p ;   //一个参数

           b)、let fn = (n,m) => n+m;  //两个参数

           c)、let fn = () => '我是没有参数的 '; //不带参数

        2)、函数体(函数体有多行代码)

             let fn = (n, m) => {

                  let total = n+m;

                 return total;

            }

    3、变量的解构赋值

       1)数组

       let [a, b, c] = [1, 2, 3];
    console.log(a); //1
    console.log(b); //2
    console.log(c); //3
    2)对象
       let {a , b} = {a:'111',b:'222'};
    console.log(a); //111
    console.log(b); //222
    4、扩展运算符:三个点(...)该运算符将一个数组,变为参数序列,所以不再需要ES5的apply方法。
       function add(x, y) {
    return x + y;
    }
    let numbers = [4, 38];
    let result = add(...numbers);
    console.log(result); // 42
    5、模板字符串
    let name = 'Kiki',
    let age = 18;
    //ES5写法
    let str = name + '的年龄是' + age + ‘岁了!’;
    //ES6写法(反引号:英文状态下,键盘第二行第一个字符)
    let str = `${name}的年龄是${age}岁了!`;
    6、Set和Map数据结构
    1)Set 类似于数组,但是成员的值都是唯一的,不重复;本身也是一个构造函数,可以用new Set()来生成Set数据结构。
       const set = new Set([1, 2, 3, 4, 4]);
    console.log(...set); //1 2 3 4
    2)Map js的对象(Object),本质上是键值对的集合。
       let a = new Map();
    let b = {};
    a.set(b,'hello');
    a.get(b); //hello
    a.has(b); //true
    a.delete(b);
    a.has(b); //false

    //Map 也可以接受一个数组作为参数
       let person = new Map([
    ['name','kiki'],
    ['age',18]
    ]);
    person.has('name'); //true
    person.has('age'); //true
    person.get('name'); //kiki
    person.get('age'); //18
    7、定义一个类及类的继承
    1)、通过class创建类
    2)、通过constructor创建构造函数
    3)、函数名(){
    //公有属性和方法
    }
       class Person{
    constructor(name,age){
    this.name = name;
    this.age = age;
    }
    makePerson(){
    return 'my name is ' + this.name + ', my age is ' + this.age
    }
    }

    let person1 = new Person('kiki',18);
    let p = person1.makePerson();
    console.log(p);//my name is this.name , my age is this.age
      4)、static 函数名(){} 静态的属性和方法,给类上添加的私有属性和方法
    5)、class 子类 extend 父类 { //子类继承父类
    constructor (name, age, color){
    super(name, age); //必须写,调用父类的constructor(name, age)
    this.color = color;
    }
    }
    8、for-of循环:遍历所有数据结构的方法,可获取键值,而原有的for-in循环可获取键名
       const arr = ['red', 'green', 'blue'];
    for(let v of arr) {
    console.log(v); // red green blue
    }
    for(let k in arr){
    console.log(k); //0 1 2
    }
  • 相关阅读:
    NoSQL数据库:Redis内存使用优化与存储
    http缓存与cdn相关技术
    sphinx 全文索引
    Elasticsearch7.1中文文档-第一章-入门
    创建一个新的laravel
    mysql数据库的主从同步,实现读写分离
    使用 Swoole 来加速你的 Laravel 应用
    Linux下全局安装composer方法
    Laravel 加载第三方类库的方法
    jquery里把数组转换成json的方法
  • 原文地址:https://www.cnblogs.com/geqin/p/7308452.html
Copyright © 2011-2022 走看看