代码改变世界

JacaScript宏任务和微任务的执行顺序

2021-07-14 15:59 by o理解, 223 阅读, 0 推荐, 收藏,
摘要:JS中分为同步任务和异步任务,异步任务又分为宏任务(macrotask queue)和微任务(microtask queue),两者执行顺序:简单粗暴的说法是微任务更早执行,因为JS执行完同步任务,渲染DOM前执行微任务;而宏任务是等DOM 渲染之后再执行。 阅读全文

怎么获取页面dom节点数量

2021-07-14 15:43 by o理解, 1347 阅读, 0 推荐, 收藏,
摘要:获取页面DOM节点的总数量 document.querySelectorAll('*').length * 代表所有节点,包含 html、head、meta、link标签、script标签等 获取指定元素子节点数量: document.querySelector('body').childNodes 阅读全文

document.documentElementTop 移动端失效

2020-02-15 17:19 by o理解, 880 阅读, 0 推荐, 收藏,
摘要:刚写完的项目在PC端运行良好,但在移动端使用 document.documentElementTop (要获取当前页面的滚动条纵坐标位置)无法监听到滚动条的位置。 附代码: const top = document.documentElement.scrollTop 发现 chrome 内核只认识: 阅读全文

JSONP原理及简单实现

2018-05-21 11:10 by o理解, 235 阅读, 0 推荐, 收藏,
摘要:JSONP实现跨域通信的解决方案。 在jquery中,我们可以通过$.ajax的dataType设置为jsonp来调用jsonp,但是jsonp和ajax的实现原理一个关系都木有。jsonp主要是通过script可以链接远程url来实现跨域请求的。如: <script src="http://jso 阅读全文

设计模式之工厂模式

2017-06-14 22:32 by o理解, 213 阅读, 0 推荐, 收藏,
摘要:// 定义构造函数 var BicycleShop = function(name) { this.name = name; this.method = function() { return this.name; } }; BicycleShop.prototype = { constructor 阅读全文