作者: linder

52 篇文章

前端开发之:内存泄漏
内存 JavaScript 内存泄漏通常是由于不合理的内存管理导致的,例如创建了大量的全局变量或闭包,或者未正确释放事件监听器和定时器等资源。 可以通过使用垃圾回收机制来解决内存泄漏问题,例如将不再使用的对象设置为 null,或者使用闭包来限制变量的作用域。 另外,避免在循环中创建大量的对象,可以使用对象池来重复使用对象,从而减少内存占用。 内存分…
前端开发之:异步I/O
promise Promise是一种用于处理异步操作的对象,它可以将异步操作的结果以回调函数的形式返回给调用者。 Promise对象有三种状态:pending(进行中)、fulfilled(已成功)和rejected(已失败)。 当异步操作执行完毕后,Promise对象的状态会从pending变为fulfilled或rejected,然后调用对应的…
前端开发之:javascript高级
javascript 高级 安全的函数作用域 立即调用的函数表达式(IIFE)是一种常见的JavaScript模式,用于创建私有作用域。IIFE是一个函数表达式,它在定义后立即调用。在IIFE中定义的变量和函数只能在IIFE内部访问,而不是在全局作用域中访问。这使得IIFE非常有用,因为它们可以帮助防止命名冲突和其他问题,同时仍然允许在全局作用域中…
软件开发之:树的遍历
树的遍历 遍历顺序是根据访问父结点的时序确定的 先序遍历 优先访问父结点,然后依次访问左子结点,右子结点 const traverse = (parentNode, callback) => { if (parentNode !== null) { // parent node callback(parentNode); // left no…
前端网络之:抓包,数据拦截,请求修改
浏览器请求拦截 对 window.XMLHttpRequest 对象的重写 拦截请求入参(通过修改 send 方法修改) class XMLHttpRequestInter extends window.XMLHttpRequest { constructor(...args) { super(...args); } send(...params)…
前端开发之-网页字符编码
字符编码 unicode 国际化,字符类型之间转换无损 UTF-8, UTF-16, UTF-32 类型 说明 UTF-8 最常用字符编码,一般由1-4个字节(对应ASCII编码的0-127),也可在5-6个字节(不在ASCII码中)表示,可变长度 UTF-16 每个字符占用2个字节,宽字符,大尾序,小尾序 UTF-32 每个字符占用4个字节 国标…
前端开发之滚动事件
Scroll Dom元素滚动时触发的Scroll事件 事件对象:window, Dom元素 事件捕捉:元素滚动条滚动时 滚动原理(滚动发生了什么?) 页面重排: 页面重新生成布局,重排必定引起重绘 页面重绘: 页面重新绘制,不一定重排 事件方法 方法名 说明 onScroll 滚动对象内部内容区域的滚动事件 onwheel 鼠标滚轮滚动触发事件(主…
前端开发之:数据算法基础-1-深度优先(递归)、广度优先
前端算法 常用算法: dfs-深度优先查找, bfs-广度优先查找 数组查找 链表查找 深度优先查找(dfs) 常见场景:多维数组递归查找, 调用栈 递归 递归定义:调用自身函数 条件:递归条件(继续调用自身的条件)、基线条件(不继续递归的条件) 递归优化用法:尾递归 示例 递归 function recursionFun(i) { //基线条件 …
前端开发之:js基础系列-浏览器滚动事件
Scroll Dom元素滚动时触发的Scroll事件 事件对象:window, Dom元素 事件捕捉:元素滚动条滚动时 滚动原理(滚动发生了什么?) 事件方法 方法名 说明 onScroll 滚动对象内部内容区域的滚动事件 onwheel 鼠标滚轮滚动触发事件(主要和onScroll做区别) scroll(x, y) 或 scroll(option…
前端开发之javascript方法:对象转数组(es6)
openLayers 开源的javascript库,用来在web浏览器显示地图,提供的API类似于Google地图和Bing地图。 使用的默认投影坐标:EPSG:3857,和OSM(OpenStreetMap)/Google Map/Bing Map默认坐标一致;不同于高德百度地图的数据格式('EPSG:4326' WGS 84),使用前注意转换。…