最热文章

在玖富数科深圳研发团队的分享

2020-01 在 玖富数科 深圳研发团队的分享 分享的内容模块 一、什么是前端开发 二、网页的组成元素与作用 三、Chrome 开发者工具的使用 四、浏览器的数据储存和资源缓存 五、前端开发的乐趣 分享的目标 了解前端开发工作内容; 了解网页结构以及各类标签的作用; 了解调试工具的使用方法,能区分当前 Bug 的归属地; 了解浏览器缓存机制; 了解前端,爱上前端; 一、什么是前端开发 1.定义 […]

前端跨域知识总结

2018-01-18 在 Dynamsoft 市场部例会上所做分享的部分内容 目录 一、 什么是跨域? 二、通过 document.domain 跨域 三、通过 location.hash 跨域 四、通过 HTML5 的 postMessage 方法跨域 五、通过 window.name 跨域 六、通过 jsonp 跨域 七、通过 CORS 跨域 八、Demo 代码 一、 什么是跨域? 跨域从字面 […]

从输入 url 到页面展示之间发生了什么

2017-11-15 在 Dynamsoft 市场部例会上所做分享的部分内容 目录 输入地址 浏览器查找域名的 IP 地址   浏览器向 web 服务器发送一个 HTTP 请求 服务器的永久重定向响应 浏览器跟踪重定向地址 服务器处理请求 服务器返回一个 HTTP 响应  浏览器显示 HTML 浏览器发送请求获取嵌入在 HTML 中的资源(如图片、音频、视频、CSS、JS等等) 思考 Web 优化 […]

从 font-size 探索移动应用的前端开发

2016-12-14 在 Dynamsoft 公司月度例会上所做分享的部分内容 目录: 讲 font-size 的原因 拉勾网 – 简单问题简单解决 网易 – 内容丰富、排版相对固定 淘宝 – 内容丰富、改动相对频繁 比较网易与淘宝的做法 前端开发如何与设计协作 讲 font-size 的原因 自公司网站首页改版之后我在慢慢的将一些老页面改成响应式,改版过程中我 […]

总结的一些 CSS 居中的方法

从事前端开发以来,对于 css 居中的代码可以说写过无数遍了,在平时的工作和学习中也常有小学弟小学妹亦或是同事来问我,这个盒子怎么居中,这个行内元素,块状元素怎么居中啊,在 table 里有怎么居中啊,垂直方向和竖直方向又怎么居中啊,等等问题。 说实话,虽然我能够解决绝大部分的居中问题,但是对于每种情况的居中方法我分的也不是很清楚,往往都是要好几种方法都试着写一遍来挑选最合适的那种。 这篇博客是结 […]

用 Canvas 绘制一个动态时钟

开始绘制之前首先要了解 Canvas 有哪些属性以及哪些用法。 目录 Canvas 的常用方法跟基础属性: Canvas 绘制时钟流程: 完整 JS 代码: 绘制时钟步骤详解 Canvas 的常用方法跟基础属性: 1>.Canvas.getContext(contextID); 返回一个表示用来绘制的环境类型的环境。其本意是要为不同的绘制类型(2 维、3 维)提供不同的环境。当前,唯一支持的是 & […]

建站环境搭建–Xampp/MAMP

在开始一个网站的开发工作之前,大多数人都希望在本地搭建一个测试站点,而搭建站点就难免会碰到环境配置过程中的问题,比如数据库和服务器的配置的等等,要是你把数据库和服务器等都分开安装的话碰到的问题估计会更多。 下面给介绍两种比较常用的建站集成软件包,它的作用是可以一次性搭建好数据库和服务器等建站必须的环境,除去了分开搭建时各种环境变量配置的麻烦 。 目录 一. Xampp 更改复用的端口: Xampp […]

*.github.io的个人博客网站无法连接的问题

问题描述 2020 年10月之后,突然之间,类似 *.github.io 的网站都打不开,而且是手机电脑连接同一个WIFI,都打不开,也是很奇怪,突然就这样了;后来我发现不同地方的网络有点可以打开,有的不能打开,我猜是 DNS 解析的问题了;我在网上找到的几种方法:重启路由器让他自动切换有效 ip、设置 VPN、科学上网等,但都不起作用,下面介绍生效的办法。 修改 host 文件 打开网址 htt […]

推荐几个数据大屏可视化开发工具

目录 Antv Codemirror Vue.Draggable(Sortable.js) vue-draggable-resizable vue-grid-layout html2canvas vcolorpicker vue-form-maker 一个简单的数据大屏可视化编辑所需要的功能包括如下几点: 工具推荐 针对功能解剖后,拆解涉及的功能模块,不同模块中涉及到比如图表、拖拽、拉伸收缩、代码 […]

http1、http2、http3的特点和解析

HTTP2采用二进制格式传输,取代了HTTP1.x的文本格式,二进制格式解析更高效。 多路复用代替了HTTP1.x的序列和阻塞机制,所有的相同域名请求都通过同一个TCP连接并发完成。在HTTP1.x中,并发多个请求需要多个TCP连接,浏览器为了控制资源会有6-8个TCP连接都限制(chrome限制为6个)。 HTTP2中同域名下所有通信都在单个连接上完成,消除了因多个 TCP 连接而带来的延时和内 […]

JS 事件轮询机制,以及宏任务队列与微任务队列

先看一道经典的面试题: 这道题主要考察的是事件循环中函数执行顺序的问题,其中包括async ,await,setTimeout,Promise函数。下面来说一下本题中涉及到的知识点。 笔记结尾会分析该道题的逻辑,我们先复习一下题目涉及的知识点。 目录 一、为什么JavaScript是单线程? 二、事件轮询(Event Loop) 三、宏任务和微任务 四、举例说明示例(重要) 五、总结 一、为什么J […]

JS 深度优先遍历(DFS)和广度优先遍历(BFS)

在开发页面的时候,我们有时候会遇到这种需求:在页面某个dom节点中遍历,找到目标dom节点,我们正常做法是利用选择器document.getElementById(),document.getElementsByName()或者document.getElementsByTagName(),但在本文,我们从算法的角度去查找dom节点,同时理解一下深度优先遍历(DFS)和广度优先遍历(BFS)的原理 […]

JS 的防抖和节流的解释与运用

防抖和节流严格算起来应该属于性能优化的知识,但实际上遇到的频率相当高,处理不当或者放任不管就容易引起浏览器卡死。所以还是很有必要早点掌握的。 场景:监听滚动条实现回到顶部功能 返回按钮只会在滚动到距离顶部一定位置之后才出现,那么我们现在抽象出这个功能需求– 监听浏览器滚动事件,返回当前滚条与顶部的距离。这个需求很简单,直接写: 但是,在运行的时候会发现存在一个问题:这个函数的默认执行频 […]

JS 中 call、apply、bind 的用法解析

目录 apply 和 call 的异同 apply 和 call 的用法 call 和 bind 的区别 ECMAScript 规范给所有函数都定义了 call 与 apply 两个方法,它们的应用非常广泛,它们的作用也是一模一样,只是传参的形式有区别而已。 每个函数都包含两个非继承而来的方法:call()和apply();在JavaScript中,call和apply作用是一样的,都是为了改变某 […]

Async/Await 替代 Promise 的 6 个理由

目录 Async/Await 简介 Async/Await 语法 为什么 Async/Await 更好? Node.js 7.6 已经支持 async/await 了,而且非常值得尝试。 Async/Await 简介 async/await 是写异步代码的新方式,以前的方法有回调函数和Promise。 async/await 是基于 Promise 实现的,它不能用于普通的回调函数。 async/ […]

JS 异步编程的六种方法

目录 前言 一、同步与异步 二、回调函数(Callback) 三、事件监听 四、发布订阅 五、Promise/A+ 六、生成器Generators/ yield 七、async/await 总结 前言 我们知道Javascript语言的执行环境是”单线程”。也就是指一次只能完成一件任务。如果有多个任务,就必须排队,前面一个任务完成,再执行后面一个任务。 这种模式虽然实现起来 […]

对 VUE 的虚拟 DOM 的一点理解

目录 摘要 模板转换成视图的过程 Virtual DOM 是什么? Virtual DOM 作用是什么? 为何需要Virtual DOM? diff 算法 diff 算法的实现过程 摘要 Vue.js 2.0 之后引入 Virtual DOM, 比Vue.js 1.0的初始渲染速度提升了2-4倍,并大大降低了内存消耗。那么,什么是Virtual DOM?为什么需要Virtual DOM?它是通过什 […]