
【Javascript】generator,异步迭代,异步generator
generator 概述 常规函数只会返回一个单一值(或者不返回任何值) 而 generator 可以按需一个接一个地返回(“yield”)多个值 它们可与 iterable 完美配合使用,从而可以轻松地创建数据流 generator 函数 要创建一个 generator,我们需...
generator 概述 常规函数只会返回一个单一值(或者不返回任何值) 而 generator 可以按需一个接一个地返回(“yield”)多个值 它们可与 iterable 完美配合使用,从而可以轻松地创建数据流 generator 函数 要创建一个 generator,我们需...
递归 执行上下文和堆栈 有关正在运行的函数的执行过程的相关信息被存储在其 执行上下文 中 执行上下文是一个内部数据结构,它包含有关函数执行时的详细细节:当前控制流所在的位置,当前的变量,this 的值(此处我们不使用它),以及其它的一些内部细节 一个函数调用仅具有一个与其相关联的...
模块 (Module) 概述 随着我们的应用越来越大,我们想要将其拆分成多个文件,即所谓的“模块(module) 一个模块可以包含用于特定目的的类或函数库 模块可以相互加载,并可以使用特殊的指令 export 和 import 来交换功能,从另一个模块调用一个模块的函数: exp...
全局对象 概述 全局对象提供可在任何地方使用的变量和函数 默认情况下,这些全局变量内建于语言或环境中 在浏览器中,它的名字是 “window”,对 Node.js 而言,它的名字是 “global”,其它环境可能用的是别的名字 最近,globalThis 被作为全局对象的标准名称...
概述 需要调用某个图片处理服务 该接口要求的输入是base64编码字符串 png-base64 实现 把目标图片编码为base64字符串,保存到txt里面 生成结果 有效数据 base64-png 实现 base64-mp4 实现
装饰器模式和转发,call/apply 概述 JavaScript 在处理函数时提供了非凡的灵活性 它们可以被传递,用作对象,也可以在它们之间 转发(forward) 调用并 装饰(decorate) 它们 透明缓存 假设我们有一个 CPU 重负载的函数 slow(x),但它的结...
概述 C++写的一个异步分析接口,会不断通过回调发送electron当前的分析数据 但是,在某个场景(js)需要调用这个接口,还需要调用后拿到最终的分析结果后再处理其他逻辑 节流实现 等待异步操作 函数返回 这里是用的Promise对操作进行了封装,只有调用resolve的时候才...
对象和原始类型的区别 原始类型的值 是原始类型中的一种值。 在 JavaScript 中有 7 种原始类型:string,number,bigint,boolean,symbol,null 和 undefined。 对象 能够存储多个值作为属性。 可以使用大括号 {} 创建对象,...
属性标志和属性描述符 概述 对象可以存储属性 目前为止,属性对我们来说只是一个简单的“键值”对 但对象属性实际上是更灵活且更强大的东西 属性标志 对象属性(properties),除 value 外,还有三个特殊的特性(attributes),也就是所谓的“标志”: writab...
垃圾回收 JavaScript 中主要的内存管理概念是 可达性。 列出固有的可达值的基本集合,这些值明显不能被释放。这些值被称作 根(roots)。 当前函数的局部变量和参数。 嵌套调用时,当前调用链上所有函数的变量与参数。 全局变量。 (还有一些内部的) 如果一个值可以通过引用...
搜索当前分类