JS(ES6+)基础

1. js基本数据类型(7种)

string,number, boolean, null, undefined, Symbol, BigInt

2. ES6+新增类型

  • Symbol 唯一不可变的原始类型
  • BigInt 超大整数类型
  • Map 键值对集合
  • Set 无重复值的集合
  • WeakMap/WeakSet 弱引用集合
    • WeakMap:键必须是对象,弱引用→当对象无其他引用时,会被 GC 回收,对应键值对自动删除;
    • WeakSet:值必须是对象,同理弱引用,无size属性,不可遍历;
    • 无内存泄漏风险:适合临时关联对象数据。
  • Promise 异步操作对象
    • 用于处理异步操作的对象,解决回调地狱问题。
  • Generator(ES6)/Async/Await(ES2017)------ 异步迭代类型
    • Generator:返回迭代器的函数(function*),可暂停 / 恢复执行,是 Async/Await 的底层基础;
    • Async/Await:语法糖,基于 Generator 和 Promise,将异步代码同步化书写。
  • ArrayBuffer/TypedArray/DataView(ES6)------ 二进制数据类型
    • ArrayBuffer:表示固定长度的二进制数据缓冲区(不可直接操作);
    • TypedArray:操作 ArrayBuffer 的视图(如 Uint8Array、Float32Array),对应不同数据类型;
    • DataView:灵活操作 ArrayBuffer,支持不同字节序。

3. ES6+新增语法

  • let/const(替代var)
    • let:块级作用域、无变量提升、不可重复声明;
    • const:块级作用域、声明必赋值、引用不可改(原始值不可变,引用类型仅冻结指针);
  • 解构赋值:快速提取数组 / 对象数据
  • 箭头函数:() => {}
  • 模板字符串:``
  • 模块化:import / export
  • 类:class
  • 可选链操作符:?.
  • 空值合并运算符:??
相关推荐
海兰10 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(三)
javascript·python·金融
小磊哥er11 小时前
深入解构Claude Code - 第 7 篇 · 连接外面的世界
javascript·ai编程
小磊哥er12 小时前
深入解构Claude Code - 第 6 篇 · 终端里的图形界面
javascript·ai编程
海兰12 小时前
【应用】基于 Next.js 16 + Python mplfinance的金融K线图与技术指标可视化平台(一)
javascript·python·金融
可乐鸡翅yeah_13 小时前
hls.js 内存泄漏实战排查,直播 M3U8 长时间播放异常定位方案
开发语言·javascript·python·django·ecmascript·m3u8·m3u8在线
可乐鸡翅yeah_13 小时前
第三方接口对接 M3U8 流媒体排坑实战,解决外部服务商流兼容难题
前端·javascript·python·django·html·m3u8·m3u8在线
默_笙14 小时前
🏠 「LLM Notes」:我用 Next.js + Redis 给自己造了个笔记博客
前端·javascript
ruanCat15 小时前
Prettier 明明执行成功,Markdown 为什么还是没变?一次插件误诊复盘
前端·javascript·node.js
软件开发技术深度爱好者16 小时前
在线学习实践 TypeScript 的官方Playground(演练场)使用介绍
javascript·学习·typescript
小磊哥er18 小时前
深入解构Claude Code - 第 5 篇 · 每次提问都给 AI 塞了什么资料
javascript·ai编程