首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
清沫
掘友等级
前端开发
|
蚂蚁金服
获得徽章 22
动态
文章
专栏
沸点
收藏集
关注
作品
赞
66
文章 60
沸点 6
赞
66
返回
|
搜索文章
最新
热门
手写Promise(符合Promise/A+规范,基于ES6)
Promise已经成为现代前端异步编程的基础。很多新的API和异步编程方式都建立在Promise基础上。因此Promise也是前端开发者必须掌握的技能。 除此之外,回调函数还存在信任问题,我们只能把自己的回调函数传给类似fetchAPI这样第三方函数,回调函数的触发时机和触发次…
Javascript异步编程超进化
js是单线程语言,这就是js设计之初就决定好的,并且在未来也不会改变。因此js并没有多线程那样的同步互斥问题。但单线程也意味着同一时间只能做一件事。如果有些任务耗时很久,那么整个应用就会被停住直到该任务完成为止。为了解决这个问题,js引入了异步编程。 异步编程可用于处理不能立即…
消息队列与事件循环 -- 浏览器系列(5)
javascript作为一门单线程语言,意味着js在同一时间只能做一件事。每个渲染进程只有一个主线程,主线程非常繁忙,既要负责完成生成页面的必要操作(如构建DOM,样式计算,布局计算等等),还要负责用户的各种交互事件(如按钮点击,鼠标滚动等),以及执行js代码。为了给用户良好的…
缓存机制,为什么第二次打开页面会变快? -- 浏览器系列(4)
浏览器缓存(也就是HTTP缓存)是浏览器十分重要的功能。通过缓存,我们可以保存资源副本并在下一次请求时直接使用该副本,而不需要重新去服务器下载。缓存可以缓解服务器端压力,提升性能,也能加快页面加载速度,提升用户体验。当然,如果缓存使用不慎,会导致页面一直是使用陈旧版本,而不是最…
如何把HTML,CSS,JS变成可交互的页面? -- 浏览器系列(3)
渲染进程负责标签页中发生的所有事,它的核心任务就是将 HTML,CSS 以及 JS 转化成用户可以交互的页面。在渲染进程中,主线程(main thread)负责处理绝大部分发送给用户的代码。合成线程(compositor)和光栅线程(raster)负责更高效流畅的渲染页面。 整…
从输入URL到页面展示, 浏览器在这中间到底干了什么? -- 浏览器系列(2)
“从用户输入URL到页面被展示出来,浏览器在这中间到底干了什么?”这是一个常常被问起的问题,其中会牵扯到浏览器各个进程之间的协作,这是一个包含很多细节的问题,本节我们就来探究一下这个过程。 1. 处理输入 如果是搜索内容,则会使用浏览器的默认搜索引擎合成新的带搜索内容的URL。…
浏览器架构 -- 浏览器系列(1)
在正式开始介绍浏览器架构之前,我们先看看后续会用到的一些概念。 CPU全称是Cental Processing Unit,即中央处理器。是电脑的核心部件,它承担了所有的计算任务。并且一个CPU同时只能处理一件事情,而现在的电脑大多采用多核CPU,这就意味着电脑能同时进行多个任务…
原型链和继承 -- Javascript基础探究篇(9)
js不同于传统的面向对象的语言,它并没有类的概念(即使ES6中已经有class关键字)。所以js的面向对象编程采用了一种特殊的方式,这种方式就是原型链。原型和原型链是js的核心,保证了函数或对象中的方法或属性能够被子类复用。 可以看到对象a有一个__proto__属性,该属性所…
this -- Javascript基础探究篇(8)
this应该是js中最为复杂的机制之一。搞懂this某种程度上意味着一次重生。 此时的foo.count的值是多少呢?答案是0。 显然,我们调用了两次foo函数,所以this.count++也肯定运行了两次。但是最后输出的this.count却还是0。那么函数里面的this到底…
lhs和rhs查询 -- Javascript基础探究篇(7)
引擎在执行代码时,如var a = 2。会通过查找判断它是否已经被声明。查找有两个类型: LHS(Left-Hand Side):通常出现在=的左边。查询会试图找到变量的容器本身 RHS(Right_Hand Side):通常出现在=的右边。查询会试图找到该变量的值 这里的L或…
下一页
个人成就
文章被点赞
428
文章被阅读
105,337
掘力值
2,947
关注了
38
关注者
151
收藏集
1
关注标签
71
加入于
2017-11-30