当前位置: 首页 > article >正文

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. 在这里插入图片描述

  4. .变量拼接
    用’':
    在这里插入图片描述

用``:在这里插入图片描述

简化对象写法

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. 在这里插入图片描述

  3. 解构赋值

rest参数

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

  1. 参数前必须加 …
function date(...args){
				 console.log(args)
			 }
			 date('小红','小绿','小兰');
  1. rest参数必须放到参数最后
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循环遍历出来的是值


http://www.kler.cn/a/587990.html

相关文章:

  • k8s serviceaccount在集群内指定apiserver时验证错误的问题
  • 计算机视觉中的MIP算法全解析
  • 使用VSCode开发STM32补充(Debug调试)
  • AI+视觉测试:如何提升前端测试质量?
  • 五大基础算法——模拟算法
  • MySQL -- 基本函数
  • 【Linux进程通信】————匿名管道命名管道
  • Matlab 风力发电机磁悬浮轴承模型pid控制
  • 从需求文档到智能化测试:基于 PaddleOCR 的图片信息处理与自动化提取
  • 每日Attention学习28——Strip Pooling
  • CVPR2024 | TT3D | 物理世界中可迁移目标性 3D 对抗攻击
  • day04_Java高级
  • 练习题:89
  • 考研专业课复习方法:如何高效记忆和理解?
  • 应用于电池模块的 Fluent 共轭传热耦合
  • C++学习笔记(二十)——类之运算符重载
  • 代码随想录算法训练营第32天 | 509. 斐波那契数 70. 爬楼梯 746. 使用最小花费爬楼梯
  • 【数据分析】读取文档(读取Excel)
  • Varjo:为战场各兵种综合训练提供XR技术支持
  • DeepSeek-R1大模型微调技术深度解析:架构、方法与应用全解析