首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Autu
掘友等级
前端
每天的我都比昨天更强。
获得徽章 1
动态
文章
专栏
沸点
收藏集
关注
作品
赞
20
文章 19
沸点 1
赞
20
返回
|
搜索文章
最新
热门
什么时候不能使用箭头函数
箭头函数的缺点 没有arguments 无法通过apply, call, bind 改变this 箭头函数的this都是父作用域里的this 什么时候不能使用箭头函数,为什么? 对象方法 执行后没有打
webpack实现一个大整数加法库的打包
实现要求: 需要打包压缩版和非压缩版 支持 AMD/CJS/ESM 模块引入 将库暴露出去: library: 指定库的全局变量 libraryTarget: 支持库的引入方式 首先创建初始目录结构
浏览器渲染流程
渲染流程 一个完整的渲染流程大致可总结为如下: 渲染进程将 HTML 内容转换为能够读懂的DOM 树结构。 渲染引擎将 CSS 样式表转化为浏览器可以理解的styleSheets,计算出 DOM 节点
状态提升var、let、const、暂时性死区
在学习es6的时候我们知道var会有变量提升的特点,而const和let不会变量提升。 我们可以在浏览器的控制台中验证var的变量提升 var的变量提升是先把a声明成undefined提升到代码最前面
手写ajax原理
``` // Ajax的原理 function ajax(url, callback) { // 1、创建XMLHttpRequest对象 var xmlhttp if (window.XMLHttp
【算法】leetcode练习记录1
给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转。 传入一个32位的有符号整数,返回它倒置以后的数。前面的0不需要返回,若倒置后超出32位范围则返回0. 这题解法较多。 刚看完题目我的第一想法是把整数转成StringBuilder后直接用reverse方法…
【并发编程】JUC组件扩展(Callable、FutureTask、Fork/Join 框架、BlockingQueue)
之前我们已经学习了创建线程的2种方式,一种是直接继承Thread,另外一种就是实现Runnable接口。 这2种方式都有一个缺陷就是:在执行完任务之后无法获取执行结果。 如果要获得返回值就必须通过共享变量或者线程间通信的方式,实现起来较复杂。 因此在Java5开始提供了Call…
【并发编程】J.U.C 之 AQS 介绍、实现及其子类使用演示
AQS全称AbstractQueuedSynchronizer. AQS底层的数据结构是双向链表,是队列的一种实现,因此也可以把它当作一个队列。 其中Sync queue是同步队列,其head节点主要用于后期调度。这里的head节点就是占用资源的线程,后面的都是等待资源的线程。…
【并发编程】线程安全策略
我们知道线程安全的问题就是出在多个线程同时修改共享变量,不可变对象的策略完全规避了对对象的修改,所以在多线程中使用一定是线程安全的。 不能被继承,final类中所有成员方法都会被隐式指定为final方法。 一个类的private方法会被隐式地指定为final方法。 除了fina…
【并发编程】常见的线程不安全类和写法
测试方法:在多线程环境下不断往StringBuilder中写入字符,检测最后的StringBuilder长度是否与写入次数相同。 可以看到StringBuilder的长度是小于5000的,这说明StringBuilder是一个线程不安全的类。 测试代码只需把上面的StringB…
下一页
个人成就
文章被点赞
20
文章被阅读
14,938
掘力值
495
关注了
66
关注者
14
收藏集
2
关注标签
65
加入于
2019-06-14