随笔分类 -  javascript

摘要:本文不是一篇 JavaScript 模块化或者 RequireJS 的教程,只是从 RequireJS 的源码来剖析了动态加载脚本和处理异步的思想,如果你想阅读一篇有关 RequireJS API 的文章,那么这并不适合你,如果你对 RequireJS 加载脚本和处理回调的原理感兴趣,那么本篇文章一定适合你。 阅读全文
posted @ 2017-07-13 21:50 Shelton_Dong 阅读(2586) 评论(0) 推荐(3) 编辑
摘要:最近突然看到了有关图片懒加载的问题,大致意思就是初始状态下页面只加载浏览器可视区域的图片,剩余图片在当浏览器可视区域滚动到其位置时才开始加载。貌似现在许多大型网站都有又实现懒加载,所以我便就此问题思考了一下。首先第一个问题是浏览器没有相关的 API 方法可以检测某个元素是否在可视区域,那么就只能我们人工计算,所以这里就涉及到了元素长宽,滚动条位置的知识。本文涉及的到的知识有元素长宽 clientWidth/offsetWidth/scrollWidth 的区别、以及 clientTop/offsetTop/scrollTop 的区别,并给了获取元素坐标的源代码。 阅读全文
posted @ 2017-07-12 14:22 Shelton_Dong 阅读(33274) 评论(3) 推荐(2) 编辑
摘要:本文总结了冒泡排序、选择排序、插入排序、希尔排序、归并排序、快速排序 6 大常见排序算法,并使用图文直观的感受排序算法的过程细节。 阅读全文
posted @ 2017-07-09 15:08 Shelton_Dong 阅读(1921) 评论(0) 推荐(0) 编辑
摘要:初识 JavaScript 对象的时候,我以为 JS 是没有继承这种说法的,虽说 JS 是一门面向对象语言,可是面向对象的一些特性在 JS 中并不存在(比如多态,不过严格来说也没有继承)。这就困惑了我很长的时间,当我学习到 JS 原型的时候,我才发现了 JS 的新世界。本篇文章讲解了 JavaScript new 操作符与对象的关系、原型和对象关联(也就是俗称的继承)的原理,适合有一定基础的同学阅读。 阅读全文
posted @ 2017-07-08 11:17 Shelton_Dong 阅读(1303) 评论(0) 推荐(1) 编辑
摘要:microtask 这一名词是 JS 中比较新的概念,几乎所有人都是在学习 ES6 的 Promise 时才接触这一新概念,我也不例外。当我刚开始学习 Promise 的时候,对其中回调函数的执行方式特别着迷,于是乎便看到了 microtask 这一个单词,但是困难的是国内很少有关于这方面的文章,有一小部分人探讨过不过对其中的原理和机制的讲解也是十分晦涩难懂。直到我看到了 Jake Archibald 的文章,我才对 microtask 有了一个完整的认识,所以我便想把这篇文章翻译过来,供大家学习和参考。 阅读全文
posted @ 2017-06-21 09:14 Shelton_Dong 阅读(11398) 评论(2) 推荐(4) 编辑
摘要:相信许多同学才学习 JS 的时候都会接触到异步这一概念,许多人会使用异步,但是对异步的原理却一知半解,许多 JS 工程师甚至工作了一两年对 JS 事件循环的机制还很模糊。本篇文章是 JS 事件循环系列的第一部分,在本篇文章中,我们重点讲解了 JS Event Loop 的运行机制,从底层原理解释了 JS 的异步特性。 阅读全文
posted @ 2017-06-20 15:33 Shelton_Dong 阅读(25996) 评论(6) 推荐(10) 编辑
摘要:本文以标签过滤样例为题,引入了JS正则表达式否定匹配的方法,进而深入对前瞻表达式进行了详细的研究,适合有一定基础的前端同学学习参考。 阅读全文
posted @ 2017-05-31 21:46 Shelton_Dong 阅读(21325) 评论(3) 推荐(1) 编辑
摘要:JavaScript 能定义常量?对,没错,JavaScript 真的可以定义常量。 阅读全文
posted @ 2016-12-31 14:04 Shelton_Dong 阅读(21291) 评论(0) 推荐(2) 编辑
摘要:逻辑运算符 && 和 || 是所有编程语言再常见不过的运算符了,然而在 JavaScript 的世界中,你真的了解逻辑运算符吗?本篇文章将带你领略这小小的两个逻辑符背后的奇妙世界。 阅读全文
posted @ 2016-12-19 16:32 Shelton_Dong 阅读(1198) 评论(0) 推荐(5) 编辑
摘要:不知道同学们在做项目的过程中有没有相同的经历呢?在使用 ajax 的时候,需要对请求参数和响应数据进行过滤处理,比如你们觉得就让请求参数和响应信息就这么赤裸裸的在互联网里来回的穿梭,比如这样: 要知道,在浩瀚的互联网中,所有的信息都是不安全的,万一有人偷窥我们怎么办?!万一被别人看见了我们的美体,偷 阅读全文
posted @ 2016-12-02 10:05 Shelton_Dong 阅读(4454) 评论(5) 推荐(5) 编辑