首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
JavaScript
订阅
衣乌语
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
因为说let没有变量提升,我被嘲笑了
最近在和同事闲聊var和let的区别时,我被嘲笑了,起因是我提出了var具有变量提升的特性而let没有的观点。在我看来这不是最常刷到的面试题吗?但是在一番仔细研究之后我发现事情并不是我想象的这样...
理解Javascript的变量提升
总括: 什么是变量提升,使用var,let,const,function,class声明的变量函数类在变量提升的时候都有什么区别。 要么庸俗,要么孤独。 但实际上,代码并没有被改变,上面的代码只是我们猜测的,其实Javascript引擎在执行这几行代码的时候并没有移动或是改变代…
嗨,你知道 let 和 const 吗?
1. var 的变量提升规则 我们都知道在 js 中,代码执行时会把当前作用域中的所有的使用 var 声明的变量以及 function 声明的函数提升到作用域的顶部(变量提升声明,不提升赋值;函数提升函数体,不提升调用)。所以我们在 var 声明变量之前可以访问 temp,结果…
尾调用和尾递归
1. 定义 尾调用是函数式编程中一个很重要的概念,当一个函数执行时的最后一个步骤是返回另一个函数的调用,这就叫做尾调用。 2. 尾调用优化 造成这种结果是因为每个函数在调用另一个函数的时候,并没有 return 该调用,所以JS引擎会认为你还没有执行完,会保留你的调用帧。 ba…
JS 万字总结 重量级干货!!!
表达式进一步转换成0==0,结果为true。 虽然过程复杂,记住判断的思路即可,非对象之间,先类型转换再比大小,对象比较则调用获取原始值方法再进一步比较。 接下来是判断2种特殊类型Set和Map,由于这2种类型的拷贝方式不同,进一步通过if分支对其判断,遍历里边所存放的值,Se…
对阮一峰《ES6 入门》中箭头函数 this 描述的探究
在部分群里引起了一些讨论,其中有一点是关于箭头函数的 this 指针的问题。使用了阮一峰《ES6 入门》文章的内容来反驳。 起初,群里一个朋友抛出了这个疑问,为啥这两个输出有差异。 那么我们首先就来分析一下到底是什么原因。 这里创建了一个 person 实例 pp。然后执行 p…
深入解析你不知道的 EventLoop 和浏览器渲染、帧动画、空闲回调(动图演示)
resize、scroll 这些事件是何时去派发的。 这些问题并不是刻意想刁难你,如果你不知道这些,那你可能并不能在遇到一个动画需求的时候合理的选择 requestAnimationFrame,你可能在做一些需求的时候想到了 requestIdleCallback,但是你不知道…
《JavaScript 闯关记》之 BOM
ECMAScript 是 JavaScript 的核心,但如果要在 Web 中使用 JavaScript,那么 BOM(浏览器对象模型)则无疑才是真正的核心。BOM 提供了很多对象,用于访问浏览器的功能,这些功能与任何网页内容无关。多年来,缺少事实上的规范导致 BOM 有很多问…
分组归类js中的offset,client,scroll,page等大小
分组归类js中的offset,client,scroll,page等大小一.offsetoffsetTopoffsetLeftoffsetWidthoffsetHeight1.offsetTop--o
面试官问:能否模拟实现JS的new操作符
用过Vuejs的同学都知道,需要用new操作符来实例化。 那么面试官可能会问是否想过new到底做了什么,怎么模拟实现呢。 从这里例子中,我们可以看出:一个函数用new操作符来调用后,生成了一个全新的对象。而且Student和Object都是函数,只不过Student是我们自定义…