一、DOM 事件流 在浏览器中,我们通过事件监听来实现 JS 和 HTML 之间的交互。一个页面往往会被绑定许许多多的事件,而页面接收事件的顺序,就是事件流。它类似于蹦床,从高处下落,触达蹦床...
队列是先进先出的有序集合 1、队列 队头出队,队尾进队 常见操作 进队: items.push(i) 出队: items.shift() 2、双端队列 队头、队尾都可以进队出队 创建操作 队头进队: items.unshift(i) 队头...
哈希函数(散列算法、散列函数)能够将任意长度的输入值转换为固定长度的散列值输出,输出值通常为字母和数字组合。在密码学中,散列函数具有不可逆性 1、一个较好的哈希函数 易于计算:易于计...
ECMAScript中的字符串是不可变的(immutable),即⼀旦创建,它们的值就不能变了。要修改某个变量中的字符串值,必须先销毁原始的字符串,然后将包含新值的另⼀个字符串保存到该变量 一、知识点...
二叉树小科普 ⼆叉树是最多仅有两个子节点的树,根据节点的分布情况可分为: 平衡二叉树: 每个结点的左右子树的高度相差不能大于1 满二叉树: 除了最底层的叶节点,每个结点都有左右子树 完全...
当业务规模快速扩大时,需要部署的项目就会越来越多,为了减少运维成本,一般会搭建一套自动化部署流程,提交代码即可快速发布部署,也叫 CI/CD 或 DevOps,属于工程化/效能/基础建设 一、整...
JS的内存空间主要分为代码空间、栈空间和堆空间,代码空间用于存放可执行代码,栈空间用于存放大小固定的数据。当调用栈完成当前的执行上下文时,需要进行垃圾回收,会触发JS的垃圾回收器自动...
一、概念 链表由一组零散的结点通过指针连接而成,每个结点都包含当前结点内容和后继指针。相对于数组,它不受固于存储空间的限制,可更快捷地进行插入和删除操作,主要有以下几种类型: 1、...
一、JS执行机制 Q: JS代码是按顺序执行的吗? A: JS代码执行过程中,需要先做变量提升,而之所以需要实现变量提升是因为JS代码在执行之前需要先编译 Q: JS代码在执行之前做了什么? A: JS会进...
一、 webpack设计思想 从入口文件解析依赖树 loader转换每个文件节点 plugin监听编译事件 1、webpack从入口文件到产物输出中间过程 读取webpack config文件,与内置参数合并,得到webpack启动...
本文以 0.59.10 版本的 React Native 为分析对象 一、架构设计 React Native 架构上由 JS 、 Native 以及连接两者的 Bridge 三部分组成 JS 部分:由 JSX 实现的视图 以及 调用 Native 能力实...
为了避免dom渲染冲突,JS采用单线程方案,即同一时间只能执行一件任务,若队列里有一个耗时长的任务,则会导致后面任务一直排队等待,甚至发生页面卡死。为此,JS将任务的执行模式分为宏任务...
Virtual DOM 是一种编程概念。在这个概念里, UI 以一种理想化的,或者说“虚拟的”表现形式被保存于内存中,并通过如 ReactDOM 等类库使之与“真实的” DOM 同步。这一过程叫做协调。 —— ...
首先,我们先上一道变体繁多的面试题,这里不贴代码,截图效果会好一些,感兴趣的点击这里查看DEMO代码。 一、变体繁多的面试 问题是:从左到右依次点击按钮,控制台会输出什么?建议在脑海里...
没有更多内容
加载失败,请刷新页面
文章删除后无法恢复,确定删除此文章吗?
动弹删除后,数据将无法恢复
评论删除后,数据将无法恢复