js
文章平均质量分 86
大青花鱼の
这个作者很懒,什么都没留下…
展开
-
浏览器页面呈现与浏览器缓存
浏览器相关知识点原创 2021-03-15 11:09:16 · 351 阅读 · 0 评论 -
前端进阶之垃圾回收机制
概念原始数据类型是存储在栈空间中的,引用类型的数据是存储在堆空间中的。不过有些数据被使用之后,可能就不再需要了,我们把这种数据称为垃圾数据。如果这些垃圾数据一直保存在内存中,那么内存会越用越多。所以我们需要对这些垃圾数据进行回收,以释放有限的内存空间。这时候就引入了垃圾回收机制。栈垃圾回收当函数执行结束,JavaScript 引擎通过向下移动ESP指针(记录调用栈当前执行状态的指针),来销毁该函数保存在栈中的执行上下文(变量环境、词法环境、this、outer)。fun..原创 2021-03-15 09:49:51 · 810 阅读 · 0 评论 -
前端进阶之原型、原型链
Javascript底层原理之原型、原型链原创 2020-11-10 18:12:01 · 592 阅读 · 0 评论 -
Javascript手动实现底层原理
手动实现Javascript底层原理原创 2020-11-05 16:40:58 · 1097 阅读 · 1 评论 -
JS event loop 事件循环
javascript是一门单线程的非阻塞的脚本语言。javascript引擎就是通过event loop(事件循环)来实现“非阻塞”的。正文我们知道,当我们调用一个方法的时候,js会生成一个与这个方法对应的执行环境(context),又叫执行上下文。这个执行环境中存在着这个方法的私有作用域,上层作用域的指向,方法的参数,这个作用域中定义的变量以及这个作用域的this对象。 而当一系列方法被依次调用的时候,因为js是单线程的,同一时间只能执行一个方法,于是这些方法被排队在一个单独的地方。这个地方被原创 2020-11-04 11:53:55 · 485 阅读 · 0 评论 -
script标签中async和defer的区别
script标签中没有 defer 或 async属性时,浏览器会立即加载并执行指定的脚本,也就是同步的方式从上而下加载并执行代码script中async和defer属性都为异步加载defer:可选脚本的加载过程和文档加载是异步发生的,脚本加载完会被延迟到整个页面都解析完毕后再运行async:可选脚本的加载过程和文档加载也是异步发生的,但脚本下载完成后会停止HTML解析,执行脚本,脚本解析完继续HTML解析标记为 async 的脚本并不保证按照指定它们的先后顺序执行如图:.原创 2020-09-14 16:35:38 · 173 阅读 · 0 评论 -
查看本地Node占用内存
查看内存node占用内存新建文件process.jsprocess.memoryUsage()终端执行process.js原创 2020-09-02 09:45:23 · 2980 阅读 · 0 评论 -
巧妙的通过promise.all节省接口的响应时间
在业务中难免会出现需要等待三四个接口返回之后再处理后续的代码,这个时候一般都会使用async/await来进行处理,那么就会有一个问题:先通过promise来模拟三个接口定时模拟每个接口需要花费的时间。 componentDidMount() { this.PageInit(); } PageInit = async () => { const oldTime = moment(); const fetch = async () => {原创 2020-08-06 10:45:45 · 1611 阅读 · 0 评论 -
Taro小程序单位转化和无法使用全局样式
1.界面兼容设计稿及尺寸单位在 Taro 中尺寸单位建议使用px、百分比 %,Taro 默认会对所有单位进行转换。在 Taro 中书写尺寸按照 1:1 的关系来进行书写,即从设计稿上量的长度100px,那么尺寸书写就是100px,当转成微信小程序的时候,尺寸将默认转换为100rpx,当转成 H5 时将默认转换为以rem为单位的值。如果你希望部分px单位不被转换成rpx...原创 2020-07-21 13:22:27 · 1828 阅读 · 0 评论 -
webpack的loader和plugin的区别
Loader用于对模块源码的转换,loader描述了webpack如何处理非javascript模块,并且在buld中引入这些依赖。loader可以将文件从不同的语言(如TypeScript)转换为JavaScript,或者将内联图像转换为dataURL。比如说:CSS-Loader,Style-Loader等。loader的使用很简单:在webpack.config.js中指定loader。module.rules可以指定多个loader,对项目中的各个loader有个全局概览。load.原创 2020-06-17 19:57:59 · 4403 阅读 · 0 评论 -
前端路由、后端路由、react-router区别
后端路由:后端路由又可称之为服务器端路由,因为对于服务器来说,当接收到客户端发来的HTTP请求,就会根据所请求的相应URL,来找到相应的映射函数,然后执行该函数,并将函数的返回值发送给客户端。对于最简单的静态资源服务器,可以认为,所有URL的映射函数就是一个文件读取操作。对于动态资源,映射函数可能是一个数据库读取操作,也可能是进行一些数据的处理,等等。然后根据这些读取的数据,在服务器端就使用相应的模板来对页面进行渲染后,再返回渲染完毕的页面。这种方式在早期的前端开发中非常普遍,比如京东页面就是个后端路由原创 2020-06-17 19:35:09 · 870 阅读 · 0 评论 -
react之高阶组件(HOC)
定义高阶组件(HOC)是 React 中用于重用组件逻辑的高级技术。 HOC 本身不是 React API 的一部分。 它们是从 React 构思本质中浮现出来的一种模式。具体来说,高阶组件是一个函数,能够接受一个组件并返回一个新的组件。理解: 一类特别的函数a. 情况 1: 参数是函数b. 情况 2: 返回是函数常见的高阶函数:a. 定时器设置函数b. 数组的 map()/filter()/reduce()/find()/bind()c. react-redux 中的 connec原创 2020-06-08 18:01:50 · 458 阅读 · 0 评论 -
react之纯函数、函数组件
纯函数 Pure Function定义:一个函数的返回结果只依赖于它的参数,并且在执行的过程中没有副作用,我们就把该函数称作纯函数。特点1. 函数的返回结果只依赖于它的参数。let foo=(a, b)=>a+bfoo(1,2) //=32. 函数执行过程里面没有副作用。什么是副作用除了修改外部的变量,一个函数在执行过程中还有很多方式产生外部可观察的变化,比如说调用 DOM API 修改页面,或者你发送了 Ajax 请求,还有调用 window.reload 刷新浏览器,原创 2020-06-08 16:59:53 · 4481 阅读 · 0 评论