JS高级程序设计
文章平均质量分 61
文章内容取自JS高级程序设计
提测前一定好好自测
因为热爱、所以永恒
展开
-
ES6 转 ES5 babel 源码阅读篇(一)
ES6 转 ES5 babel 源码阅读篇(一)原创 2021-12-08 22:57:12 · 741 阅读 · 0 评论 -
纯函数(Pure functions)
理解纯函数的概念原创 2021-11-30 08:36:05 · 1924 阅读 · 0 评论 -
函数式编程与高阶函数
理解函数式编程、高阶函数以及闭包。手把手实现了一些高阶函数原创 2021-11-30 08:28:36 · 666 阅读 · 0 评论 -
一文搞懂CommonJs规范
一文搞懂CommonJs规范,下次吹牛时这么说原创 2021-11-29 23:18:02 · 682 阅读 · 0 评论 -
手写 bind 函数实现,手摸手分享思路
手写bind函数,理解原理原创 2021-11-28 13:30:15 · 489 阅读 · 1 评论 -
手写 apply 函数实现,手摸手分享实现
手写 apply 函数实现,手摸手分享实现原创 2021-11-28 00:20:05 · 830 阅读 · 0 评论 -
手写 call 函数实现,手摸手分享思路
手抹手教学 call 方法实现的思路原创 2021-11-27 21:40:57 · 587 阅读 · 0 评论 -
标记清除算法实现原理 和 优缺点
标记清除算法核心思想:分标记和清除第二个阶段完成遍历所有对象找到标记活动(可达)对象 遍历所有对象清除没有标记对象 回收相应的空间第一个解读那遍历所有对象,找到可达对象并标记,第二个阶段遍历所有对象清除没有标记的对象,并抹除可达对象的标记在全局上可以找A、B、C三个可达对象,找到之后发现下面还有D、E子引用,GC算法会用递归的方式继续找到可达对象。而 a1 和 b2 可能位于局部作用域中,在函数执行完后被回收了,global找不到 a1 和 b2的,GC机制认为它就是一个垃圾..原创 2021-08-11 08:56:41 · 1234 阅读 · 0 评论 -
引用计数算法实现原理 和 优缺点
引用计数算法核心思想:设置引用数,判断当前引用数是否为 0 引用计数器 引用关系改变时修改引用数字 应用数字为 0 时立即回收// reference countconst user1 = {age: 11}const user2 = {age: 22}const user3 = {age: 33}const nameList = [user1.age, user2.age, user3.age]function fn() { num1 = 1 num2 = .原创 2021-08-10 09:03:36 · 365 阅读 · 0 评论 -
GC算法介绍
GC 定义与作用GC 就是垃圾回收机制的简写 GC 可以找到内存中的垃圾、并释放和回收空间GC 里的垃圾是什么程序中不再需要使用对象function func() { name = "deyang" return `${name} is a coder`}func()从程序需求的角度,上述程序中的 name,再函数调用后 其实已经不在需要name了,从我们需求的角度应该是被当作垃圾回收的。至于有没有被回收,现在不做讨论function func() {.原创 2021-08-10 08:48:30 · 108 阅读 · 0 评论 -
JavaScript 中的垃圾回收
JavaScript 中的垃圾JavaScript 中的内存管理是自动的 对象不再被引用时是垃圾 对象不能从根本上访问到时是垃圾每当我们创建一个对象、数组或者函数的时候会自动的分配相应的内存空间,后面执行的过程中,通过引用关系无法找到某些对象的时候,这些个对象就会被看作是垃圾。但是由于代码当中不合适的语法或者是结构性的错误,让我们没有办法找到对应的对象,这种对象也是垃圾JavaScript 中的可达对象可以访问到的对象就是可达对象(引用、作用域链) 可达的标注就是从根触发是否能够被找原创 2021-08-10 08:30:56 · 157 阅读 · 0 评论 -
Javascript内存管理
内存为什么需要管理?function fn() { arrList = [] arrList = [100000] = 'dy is a coder'}fn()上面这段函数,从语法的层面来说,不存在任何问题的,不过当我们用相应的性能监测工具对脚本执行的过程进行监测的时候,我们会发现,他的内存变化,和我们看到的蓝色线条一样是持续升高的,在这个过程中并没有看到回落,这代表着:内存泄露。至于是如何泄漏的我们现在不需要纠结如果说我们在写代码的时候,不够了解内存管理的一些机制,原创 2021-08-09 23:54:26 · 146 阅读 · 0 评论 -
JS创建对象模式7种方法详解
创建对象模式虽然Object构造函数或者字面量创,都可以用来创建对象,但这些方式有明显的缺点:使用同一个接口创建很多对象,会产生大量的代码,于是,工厂模式诞生了工厂模式工厂模式是广为人知的设计模式,抽象了创建具体对象的过程。在ES6的Class创建类之前,是无法创建类的,开发人员就发明了一种函数,用函数来封装以特定接口创建对象的细节,如下工厂模式简单说,就是定一个函数,在函数内部创建一个对象定义属性并返回。可以无数次调用这个函数,根据参数返回包含三个属性和一个方法的对象。书中说:虽然工厂模式解原创 2020-08-15 10:36:12 · 1211 阅读 · 0 评论 -
JS理解对象、对象的属性
Object实例创建1.创建自定义对象最简单的方式就是创建一个Object实例,然后为它添加属性和方法**[外链图片转存失败,源站可能有防盗加粗样式]!链机制,建https://(img-uXblog.csdnimg.cn020073014042380https:/imEg-blog.csdnimg.cn/2020073014042380.png)]**2.第一个例子可以用对象字面量的功能快捷键合理的创建标题,有助于目录的生成直接输入1次#,并按下space后,将生成1级标题。输入2次#,并原创 2020-07-30 16:10:20 · 1484 阅读 · 0 评论