JavaScript
文章平均质量分 56
喜欢路飞的银桑
前端狗
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
对闭包的理解
MDN:闭包就是函数与它目前所在的词法环境一起的统称。 主要应用在使用访问函数内部变量时,返回包含访问函数内部变量的子函数。这样子函数与它的词法环境就构造成了闭包。 闭包的优点:可以隔离外部的直接访问。只能通过返回的函数访问或者修改内部变量。让函数与数据(环境)关联起来。类似于class的功能。 参考资料: MDN闭包:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Functionsz MDN函数:https://de.原创 2022-04-24 16:37:13 · 316 阅读 · 0 评论 -
UDP与IP分片
一、UDP 1. UDP特点 [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-lUf1OSBA-1642486941260)(r5ub5agkh.hb-bkt.clouddn.com/pic/1.jpg)] 它不提供差错纠正、队列管理、重复消除、流量控制和拥塞控制。它提供差错检测,包含我们在传输层中碰到的第一个真实的端到端(end-to-end)校验和。 我们可能考虑到这种可靠性和保护性的缺失,而会一般认为使用UDP一点好处也没有。但是,这是不对的。因为它的无连接特征,它要比其原创 2022-01-18 14:22:26 · 5253 阅读 · 0 评论 -
《你不知道的JavaScript(上卷)》第一部分:作用域与闭包的读书笔记
《你不知道的JavaScript(上卷)》第一部分:作用域与闭包的读书笔记 作用域和闭包 1、介绍了作用域,主要说明了RHS和LHS这两个概念。RHS是读取值,LHS是赋值。 2、词法作用域:有两个机制可以动态改变词法作用域:eval和with。eval可以运行字符串代码,动态修改已经存在的词法作用域。with可以在属性不存在的时候,将此属性泄漏到全局作用域 3、介绍了词法作用域里面的函数作用域和块作用域。 函数作用域本质上是隐藏函数内部的变量和函数,符合最小暴露原则。 块作用域必须要使用let关键字才能生原创 2021-11-04 16:36:02 · 483 阅读 · 0 评论 -
JavaScript里面的Map与Object和WeakMap区别
Map与Object Object 结构提供了“字符串—值”的对应,Map 结构提供了“值—值”的对应。键的类型不仅仅可以是字符串,也可以是对象,甚至是null,undefined。而在Object对象这样的键转会被转成字符串 WeakMap和WeakSet 键名与Map和Set相比,只能是对象。而且对键的引用是弱引用,不会干扰内存的回收。 ...原创 2021-06-16 16:30:48 · 281 阅读 · 0 评论 -
事件循环:Promise与宏任务,微任务
宏任务与微任务 宏任务:script,setTimeout,setInterval,MessageChannel,I/O(文件,网络)相关API,DOM事件监听,setImmediate(Node.js)。 微任务:process.nextTick(Node.js)MutationObserver(浏览器),Promise.prototype.then()/catch()/finally()。 requestAnimationFrame是宏任务还是微任务? 有4种不同的情况: 宏任务里面新建宏任务:加入宏任原创 2021-06-02 17:57:47 · 910 阅读 · 1 评论 -
JavaScript里面的模块化4种方式(CommonJS,AMD,CMD,es6Module)
JS的模块化大致有CommonJS,AMD,CMD,es6Module四种。那么它们到底有什么相同和不同之处呢? CommonJS CommonJS:在Node中使用,同步加载模块。在esModule还没有出现时,为Node主要模块化解决方案。 导入: const moduleA = require("./modulePath") const { moduleB } = require("./modulePath") 导出: module.exports = moduleA // 默认模块 modu原创 2021-05-25 16:44:20 · 1514 阅读 · 1 评论 -
通过例子解释防抖和节流
这是一篇译文,是一篇我感觉对防抖和节流解释比较好懂的博客。原文在这里 防抖和节流是两个相似的技术去控制很多次我们允许一个函数去执行在一定时间内 有防抖和节流的函数是特别有用的,当我们把这个函数绑到DOM事件时。为什么?因为我们有了一个控制层在事件和执行函数之间。记住,如果我们不去控制DOM事件的冒泡,它的数量可以非常巨大。 例如,让我们看看滚动事件,看下面的例子: 当我们使用触摸板,滚轮或者仅仅是拖动滚动条时每秒就能触发30次滚动事件。而且在手机上缓慢的滚动每秒能触发100次滚动事件在我的测试中。你的.翻译 2021-05-25 15:54:05 · 499 阅读 · 0 评论 -
异步函数发展史:Promise对象,Generator函数,Thunk函数和自动流程管理
异步函数发展史:Promise对象,Generator函数,Thunk函数和自动流程管理 文章目录异步函数发展史:Promise对象,Generator函数,Thunk函数和自动流程管理1、回调地狱2、Promise对象3、Promise对象 + Generator函数4、Promise对象 + Generator函数 + 基于Thunk函数的自动化流程管理4.1、Thunk函数4.2、基于Thunk函数的Generator函数自动化流程管理5、Promise对象 + Generator函数 + 基于Pro原创 2020-11-20 14:49:30 · 426 阅读 · 0 评论 -
有关ES6中Symbol数据类型的理解
Symbol是一种基本数据类型,一种在ES6引入的新的数据类型。 目的是为了防止属性名的冲突,保证对象中每一个属性名都是独一无二的。 let s1 = Symbol('foo'); let s2 = Symbol('foo'); s1 === s2 // false Symbol类型可以有一个字符串参数,表示对Symbol实例的描述。所以相同描述的两个Symbol类型实例也是不相等的。 如何在对象中使用 let s = Symbol(); // 第一种写法 let a = {}; a[mySymb原创 2020-05-30 10:10:39 · 978 阅读 · 0 评论 -
JavaScript 字面量、变量、与输出
JavaScript的简介JS代码写在<script></script>标签之间,在标签之间的语句会在页面加载时执行;JS函数只会在调用它时执行。<script>标签一般写在<head>或<body>标签底部,因为放在同一位置,不会干扰其它HTML内容。如果JS文件在外部文件中,使用<script>标签的src属性导入该JS文件。JS四种输出方式:原创 2017-09-25 16:13:24 · 1352 阅读 · 0 评论 -
JS 字符串和 HTML 事件
HTML常见事件 HTML 事件可以是浏览器行为,也可以是用户行为。比如,页面加载完成的事件就是浏览器行为。而像点击事件,文本改变这些事件就是用户行为。 而JS就是用来处理事件,如处理表单验证,用户输入,用户行为及浏览器动作等。 下面就是常见的HTML事件。 更多的事件点击这里。 JS 字符串 JS字符串可以使用单引号和两引号来表示一个字符串。 var carname = "原创 2017-10-09 10:23:11 · 581 阅读 · 0 评论
分享