【ES6】

目录

  • [变量声明:let 和 const](#变量声明:let 和 const)
  • [箭头函数(Arrow Functions)](#箭头函数(Arrow Functions))
  • [模板字符串(Template Literals)](#模板字符串(Template Literals))
  • [解构赋值(Destructuring Assignment)](#解构赋值(Destructuring Assignment))
  • [扩展运算符(Spread Operator)和剩余参数(Rest Parameters)](#扩展运算符(Spread Operator)和剩余参数(Rest Parameters))
  • 类(Classes)
  • 模块化(Modules)
  • 迭代器(Iterators)与生成器(Generators)
  • [Promise 对象](#Promise 对象)
  • 新数组方法
  • [新集合类型:Map 和 Set](#新集合类型:Map 和 Set)
  • [默认参数值(Default Parameter Values)](#默认参数值(Default Parameter Values))
  • 增强的对象字面量

变量声明:let 和 const

let 允许你声明一个作用域被限制在块级的变量。

const 用于声明常量,其值不能被重新赋值。

箭头函数(Arrow Functions)

箭头函数提供了一种更简洁的语法来定义函数,并且不会创建自己的 this 上下文,而是从周围的作用域继承 this 值。

模板字符串(Template Literals)

模板字符串使用反引号(`)来定义,允许你在字符串中嵌入表达式。

解构赋值(Destructuring Assignment)

解构可以让你从数组或对象中提取数据到独立的变量中。

扩展运算符(Spread Operator)和剩余参数(Rest Parameters)

扩展运算符可以在函数调用/构造器调用时将数组展开为多个参数。

剩余参数则相反,它可以将不定数量的参数收集为一个数组。

类(Classes)

ES6 中引入了 class 关键字,使面向对象编程更加直观。

模块化(Modules)

使用 export 导出功能,以及 import 引入功能,支持大型应用中的代码组织和重用。

迭代器(Iterators)与生成器(Generators)

迭代器是一种特殊的对象,允许你遍历数据结构。

生成器函数可以暂停执行并稍后从中断处继续,这使得异步流程控制变得更简单。

Promise 对象

Promise 代表了未来可能完成也可能失败的操作,提供了更好的错误处理机制和链式调用的能力。

新数组方法

如 .find(), .findIndex(), .includes() 等,这些方法简化了对数组元素的搜索和操作。

新集合类型:Map 和 Set

Map 是一种键值对的集合,类似于其他语言中的字典或哈希表。

Set 是一种存储唯一值的集合,不允许重复的数据。

默认参数值(Default Parameter Values)

函数参数现在可以有默认值。

增强的对象字面量

对象字面量现在可以直接写计算属性名,并且可以通过简写方式直接设置方法。

相关推荐
Csvn5 分钟前
🤖 AI 生成前端代码的 5 个典型翻车现场及修复指南
前端
IT_陈寒1 小时前
SpringBoot自动装配坑了我一天,原来问题出在这
前端·人工智能·后端
索西引擎2 小时前
【React】key 属性:协调算法中的元素标识机制与最佳实践
前端·javascript·react.js
只会cv的前端攻城狮2 小时前
动态组件架构设计:从配置到事件驱动全链路解析
前端·vue.js
飞天狗2 小时前
Next.js 16 App Router 实战:服务端组件与流式渲染
前端·next.js
OpenTiny社区2 小时前
TinyEngine 2.11版本发布:AI 进一步融入画布,Vue 工程可一键转DSL
前端·vue.js·github
小雪_Snow3 小时前
JavaScript 中的三种常用事件
开发语言·前端·javascript
Hyyy3 小时前
Electron-Vite是什么,和Vite有什么区别
前端·面试
蓝胖子酱3 小时前
在 Electron 中用 electron-store 实现加密存储与自定义格式文件
前端·javascript·数据库
虚焦像素_3 小时前
海康 Web 插件版接入指南:用法与注意事项
前端