es6初步学习

Es6

作用:

  1. 语法简洁,功能丰富
  2. 框架开发应用
  3. 前端开发职位要求

ECMAScript

  1. 它是一个脚本程序设计语言
  2. 注意:块级作用域是指变量只在特定的代码块(通常由一对花括号{}包裹,比如if语句、for循环、while循环等的代码块 )中可见的作用域。

let

let :

  1. 可以批量的声明和赋初始值
  2. 变量不能重复声明
  3. 块级作用域
  4. 需要写在代码块中
  5. 不存在变量提升
  6. 不影响作用域链(顺着作用域链往上找,不是向外找)
  7. 实例:{
    let girl='周扬青'
    }

const

const

  1. 声明常量
  2. 一定要赋初始值
  3. 一般常量使用大写
  4. 常量的值不能修改
  5. 块级作用域
  6. 对于数组和对象的元素修改,不能算作对常量的修改,不会报错

解构赋值

  1. ES6允许按照一定模式从数组和对象中提取值,对变量进行赋值,成为解构赋值
  2. 分类: 1. 数组解构 2. 对象解构

模板字符串

  1. . 声明字符串的方式: `` , '' , ""

  2. . 内容中可以直接出现换行符

  3. .变量拼接

    用'':

用``:

简化对象写法

ES6 允许在大括号里,直接写入变量和函数,作为对象的属性和方法,书写更简洁箭头函数

  1. this是静态的,this始终指向函数声明时所在作用域下的this的值(外层作用域)

  2. 不能作为构造函数

    没有自身的this绑定:箭头函数没有自己独立的this值,它的this是继承自外层作用域。在构造函数的机制中,this需要指向新创建的对象来添加属性,但箭头函数无法满足这一点,它的this指向是固定的,不会因为new调用而改变。

  3. 不能使用arguments变量,如果在箭头函数中使用 arguments,它会引外层函数的 arguments

  4. 注意:arguments 是一个特殊的类数组对象,它有索引和 length 属性,当你不确定函数会接收多少个参数时,arguments 就非常有用。比如上面的 add 函数,可以接受任意数量的参数并求和。

  5. 箭头函数的简写

    1)省略小括号,当形参有且只有一个的时候

    2)省略花括号,当代码体只有一个语句时,此时return 必须省略,而且语句的执行结果就是函数返回值

  6. 箭头函数适合与this无关的回调,定时器,数组的方法回调

    箭头函数不适合与this有关的回调,事件回调,对象的方法

函数参数默认值

  1. 允许给函数参数赋值初始值

  2. 解构赋值

rest参数

ES6引入rest参数,用于获取函数的实参,用来代替arguments

  1. 参数前必须加 ...
css 复制代码
function date(...args){
				 console.log(args)
			 }
			 date('小红','小绿','小兰');
  1. rest参数必须放到参数最后
css 复制代码
function fn(a,b,...args){
			 console.log(a);
			 console.log(b);
			 console.log(args);	   
		 }
		 fn(1,2,3,4,5,6,78,8,9,0)

扩展运算符

...扩展运算符能将数组转换成逗号分隔的参数序列

symbol基本使用

  1. 新的原始数据类型
  2. 特点:
    1. symbol的值是唯一的,解决命名冲突的问题
    2. symbol的值不能与其他数据进行运算
    3. symbol定义的对象属性不能使用for...in遍历,但是可以用Reflect.ownKeys来获取对象的所有键名
      数据类型

创建对象属性

向对象中添加方法 up down

迭代器

  1. 它是一种接口,任何数据只要部署iterator接口,就可以完成遍历操作
  2. 创造了一个新的遍历命令for...of循环,terator接口主要提供for... of
    消费
    2.原生具备iterator接口数据(可用for of遍历)

for in循环遍历出来的是1,2,3...

for of循环遍历出来的是值

相关推荐
gc_229930 分钟前
学习C#调用OpenXml操作word文档的基本用法(7:Style类分析-5)
学习·word·openxml
AA陈超33 分钟前
ASC学习笔记0014:手动添加一个新的属性集
c++·笔记·学习·ue5
Chunyyyen1 小时前
【第二十二周】自然语言处理的学习笔记06
笔记·学习·自然语言处理
hhcccchh2 小时前
学习vue第三天 Vue 前端项目结构的说明
前端·vue.js·学习
重启编程之路5 小时前
python 基础学习socket -TCP编程
网络·python·学习·tcp/ip
石像鬼₧魂石5 小时前
Kali Linux 中对某(靶机)监控设备进行漏洞验证的完整流程(卧室监控学习)
linux·运维·学习
d111111111d6 小时前
STM32通信协议学习--I2C通信(了解)
笔记·stm32·单片机·嵌入式硬件·学习
盼哥PyAI实验室6 小时前
学会给网页穿衣服——学习 CSS 语言
前端·css·学习
我的xiaodoujiao7 小时前
使用 Python 语言 从 0 到 1 搭建完整 Web UI自动化测试学习系列 25--数据驱动--参数化处理 Excel 文件 2
前端·python·学习·测试工具·ui·pytest
Rousson7 小时前
硬件学习笔记--89 MCU主频对Uart波特率影响及采样点
笔记·单片机·学习