1-1、前端编程思想进阶-ES6基础常用功能应用(1)

71 阅读2分钟

一、ES6基础常用功能应用(1)

1. 课程主题&知识点

  • 掌据ES6基本使用
  • 了解数据驱动视图模式

2. ECMAScript6入门

2-1.简介

  • JavaScript 三大组成部分: ECMAScript、DOM、BOM

  • ECMAScript 发展历史 developer.mozilla.org/zh-CN/docs/…

  • ECMAScript 包含内容: JS 中的数据类型及相关操作,流程控制,运算符及相关运算……

2-2.知识点

let & const区别

let 和 var 的差异:

  • let 允许声明一个在作用域限制在块级中的变量、语句或者表达式

const 常量:

image.png

深度冻结对象数据:

image.png

解构赋值

    let obj = {
        name:"张三",
        age:20,
        hobby:{
            one:"篮球"
        }
    }
    let { name:myname, age, hobby:{one} } = obj;
    console.log(myname, age, one);

展开运算符

    let obj = {
        name:"张三",
        age:20,
        hobby:{
            one:"篮球"
        }
    }
    let newObj = { height:"178cm", ...obj };
    console.log(newObj);

    function test(...args){
        // console.log(arguments);
        console.log(args);
    }
    test(1,2,3);

Set对象

image.png

image.png

set会清除重复的数据 image.png 注: 若要频繁更改某对象的属性,建议使用Map,Set这样性能更高;

Map对象

weakMap弱引用:清空会被垃圾机制回收,性能更好但API少,而map不会被回收; image.png

打印:被清空了; image.png

Symbol:唯一标识

[Symbol(key)] :‘值’ 这样增加获取的难度--需要使用getOwnPropertySymbols 获取

image.png

image.png

函数新增扩展

  • 箭头函数
  • rest 参数设置
  • 参数默认值设置

image.png 对象返回的情况需要注意一些,加个小括号包裹起来; 箭头函数默认return 返回;

新增数组扩展

新增字符串扩展

新增对象扩展

babel的使用

  • Babel 是一个 JavaScript 编译器
  • 手册地址:www.babeljs.cn/
  • Babel 基本是否方法

带着问题学习

  • var、let 及 const 区别?
  • 说一下 ES6 对 Object 类型做了哪些优化更新?

2-3.下期预告

  • js面向对象