朝花夕拾
文章平均质量分 90
F班的小夏同学
理想主义青年永远不会被现实招安
展开
-
JS垃圾回收
GC就是Garbage Collection,程序工作过程中会产生很多垃圾,这些垃圾是程序不用的内存或者是之前用过了,以后不会再用的内存空间,而GC就是负责回收垃圾的。当然也不是所有的语言都会自带GC,比如Java、Python、Javascript等,也有没有GC的语言,比如C、C++等,那这种就需要我们程序员手动管理内存了,相对比较麻烦。原创 2023-01-12 16:05:45 · 347 阅读 · 1 评论 -
JS引擎的执行过程
所以这里就需要权衡到底是要快速的生成并执行还是要多花些时间生成并高效执行,一些引擎引入多个具有不不同时间/效率特性的优化编译器,以增加复杂性为代价,就是为了对这些权衡做更细粒度的控制。这中间还涉及到内存的权衡,机器码比字节码会。原创 2023-01-12 10:24:45 · 896 阅读 · 1 评论 -
作用域与作用域链
javascript拥有一套设计良好的规则来存储变量,并且之后可以方便的找到这些变量,这套规则叫做作用域。原创 2023-01-04 10:27:32 · 288 阅读 · 7 评论 -
再说原型链
关于原型链,已经被无数次的提起,每次回顾都有新的理解,今天我们再来说说原型链。我们知道,每一个javascript对象(除了null)在被创建的时候都会与另一个对象关联起来,这个对象就是我们所说的原型,每一个对象都会从原型中“继承”属性。好,问题来了,我们需要原型链来做些什么呐?原创 2023-01-02 17:44:35 · 347 阅读 · 0 评论 -
Event Loop
试想,假如javascript是多线程的,在一个线程中为某个DOM节点添加了任务,在另一个线程中又将该节点删除了,这就比较尴尬了,最后应该依照哪个结果呢?上面我们认识到了同步任务和异步任务,知道先执行完主执行栈中的同步任务,然后再执行异步任务,那么问题来了,异步任务中哪个任务被率先推入主执行栈中呢?6.查看异步任务队列中是否有微任务(注意是异步任务队列,遵循先进先出),依次执行。在javascript中,我们将所有的任务大体上分为两类:同步任务和异步任务。7.微任务执行结束,继续执行宏任务,打印出。原创 2022-12-30 17:40:35 · 778 阅读 · 4 评论