摘要: 调用了这么久的JS方法是长在对象、类、值本身还是原型链上? JavaScript这门语言总是能带给我惊喜,在敲代码的时候习以为常的写法,退一步再看看发现自己其实对很多基操只有表面的使用,而从来没思考过为何要这样操作。 今天整理JS代码的时候突然发出灵魂三连问: 为什么有些时候操作对象,可以直接调用对 阅读全文
posted @ 2024-06-20 21:56 CamWang 阅读(227) 评论(0) 推荐(1) 编辑
摘要: 神奇的JavaScript弱等价类型转换 JavaScript这门语言的类型系统从来没有它表面看起来的那样和善,虽然比起Java、C#等一众强类型语言,它的弱类型使用起来似乎是如此便利,但正因为它极高的自由度,所以才会衍生出令人摸不着头脑的荒诞行为。 举个例子,虽然我们都知道一个包含内容的字符串会被 阅读全文
posted @ 2024-06-11 20:24 CamWang 阅读(203) 评论(1) 推荐(2) 编辑
摘要: Promise 期约之前 回调地狱 设想这样一个经常发生的场景,我们希望处理Ajax请求的结果,所以我们将处理请求结果的方法作为回调传入,需要将请求结果继续处理,这就导致我们陷入了回调地狱 doSomething(function(result) { // doSomething的结果以回调调用的形 阅读全文
posted @ 2021-01-20 19:17 CamWang 阅读(102) 评论(0) 推荐(1) 编辑
摘要: 关键渲染路径CRP笔记 关键渲染路径(Critical Render Process)是浏览器将HTML、CSS和JavaScript代码转换为屏幕上像素的步骤序列,它包含了DOM(Document Object Model)、CSSOM(CSS Object Model)、渲染树(Render T 阅读全文
posted @ 2020-11-30 11:47 CamWang 阅读(154) 评论(0) 推荐(0) 编辑
摘要: JavaScript模块化笔记 一个模块就是一堆被封装到一个文件当中的代码,并使用export暴露部分代码给其他的文件。模块专注于一小部分功能并与应用的其他部分松耦合,这是因为模块间没有全局变量或共享变量,他们仅通过暴露的模块代码的一部分来进行通信。任何你想在另一个文件中访问的代码都可以被封装为模块 阅读全文
posted @ 2020-11-25 17:57 CamWang 阅读(55) 评论(0) 推荐(0) 编辑
摘要: JavaScript防抖与节流 概念 防抖(debounce)与节流(throttle)是两个相似但有本质区别的两个概念,但两个概念的存在都是为了控制在特定条件下函数最大的执行次数。这在例如将函数执行onScroll事件绑定这类事件发生次数过多导致回调函数在任务队列积压、回调函数执行时间过长导致调用 阅读全文
posted @ 2020-11-15 11:04 CamWang 阅读(173) 评论(0) 推荐(0) 编辑
摘要: JavaScript执行模型 引言 JavaScript是一个单线程(Single-threaded)异步(Asynchronous)非阻塞(Non-blocking)并发(Concurrent)语言,这些语言效果通过一个调用栈(Call Stack)、一个事件循环(Event Loop)、一个回调 阅读全文
posted @ 2020-11-14 23:07 CamWang 阅读(171) 评论(0) 推荐(0) 编辑
摘要: JavaScript原型与原型链 正如一些面向对象语言中所实现的那样,在JavaScript中我们有时也需要创建一个拥有公共函数与属性的类作为父类来减少代码重复、实现类型检查与实现更加清晰地代码结构。在JavaScript中,继承是通过原型链实现的。了解JavaScript的继承与原型链之前首先需要 阅读全文
posted @ 2020-11-04 10:03 CamWang 阅读(54) 评论(0) 推荐(0) 编辑
摘要: CORS跨域问题 跨域问题简介 跨域资源共享(Cross-origin resource sharing, CORS)是用于让网站资源能被不同源网站访问的一种安全机制,这个机制由浏览器与服务器共同负责,浏览器在其中扮演最重要的角色。 同源 协议相同(http、https)、域名相同、端口相同就是同源 阅读全文
posted @ 2020-09-26 12:04 CamWang 阅读(86) 评论(0) 推荐(0) 编辑
摘要: 标记【跳过】的未来完善 1 理解JPA 1.1 什么是持久化? 当一个软件关闭的时候,软件内储存的状态数据还能在下次开启时被恢复,这就是持久化。对象持久化是指每个独立的对象的生命周期都能不依赖应用程序进程,比如将对象存储到数据库或者在以后能被重新创建。在Java当中,持久化是指使用SQL语句在数据库 阅读全文
posted @ 2020-08-10 11:05 CamWang 阅读(162) 评论(0) 推荐(0) 编辑