zoukankan      html  css  js  c++  java
  • ES6笔记一

    1.let与const

    ES6 新增了let命令,用来声明变量。它的用法类似于var,但是所声明的变量,只在let命令所在的代码块内有效。

    for循环的计数器,就很合适使用let命令。

    ES6 的块级作用域必须有大括号,如果没有大括号,JavaScript 引擎就认为不存在块级作用域。

    与var相比,主要区别在于:

    a)没有预解析,不存在变量提升
    b)在同一个作用域里不能重复定义变量

    const声明一个只读的常量。一旦声明,常量的值就不能改变。

    这意味着,const一旦声明变量,就必须立即初始化,不能留到以后赋值。

    但是对于引用类型数据,const声明的变量是可以改变的

    const b = {
                a: '1',
                b: '2'
            }
    
     b.a = '3'
    console.log(b) // {a: '3', b: '2'}
    
     const arr =['apple','banana'];
    
     arr.push('orange');
     console.log(arr); // ['apple','banana','orange']

    2.变量的解构赋值

    ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构。

    // 左右两边结构和格式要保持一致
    // 解构不成功为undefined
    // 解构数组
    let [a,b,c] = [1, 2,3]
    // 解构json
    let json = {
       name:‘strive',
    age: 18,
    job: 'hah'
    }
    let {name, age, job} = json;

     用途:

    1).交换变量

    let x = 1;
    let y = 2;
    
    [x, y] = [y, x];

    2).从函数返回多个值

    函数只能返回一个值,如果要返回多个值,只能将它们放在数组或对象里返回。有了解构赋值,取出这些值就非常方便。

    // 返回一个数组
    
    function example() {
      return [1, 2, 3];
    }
    let [a, b, c] = example();
    
    // 返回一个对象
    
    function example() {
      return {
        foo: 1,
        bar: 2
      };
    }
    let { foo, bar } = example();

    3).提取json数据

    let jsonData = {
      id: 42,
      status: "OK",
      data: [867, 5309]
    };
    
    let { id, status, data: number } = jsonData;
    
    console.log(id, status, number);
    // 42, "OK", [867, 5309]

     3.字符串的扩展

    比较有用的是这个模板字符串

    反撇号 ··
    嵌入变量: ${ 变量名 }

    let name ='Strive';
    let age = 18;
    let str = `这个人叫${name}, 年龄是 ${age}岁`;
    console.log(str);
  • 相关阅读:
    ResponsibleChain(责任链模式)
    IteratorPattern(迭代子模式)
    为什么抽象类不能实例化却有构造方法
    ObserverPattern(观察者模式)
    TemplateMethod(模块方法模式)
    java 定义一个同步map内存去重法
    oracle sql修改序列为当前序列开始
    oracle sql 当初始化数据时避免重复主键
    搭建基于express框架运行环境
    vue路由基础介绍
  • 原文地址:https://www.cnblogs.com/thinkguo/p/12398585.html
Copyright © 2011-2022 走看看