首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
小丸子子丸小
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
38
文章 37
沸点 1
赞
38
返回
|
搜索文章
最新
热门
这次真的弄懂let/const
以上ES5代码的写法,无论flag为true还是false,value不会报错,而是打印出undefined。 这是因为var存在变量提升——提升至当前作用域顶部,而if没有单独的块级作用域,因此被提升到if的外部,可能覆盖外部变量。 ES5中,使用var,即便循环已经结束了,…
let/const的暂时性死区
进入当前作用域,在变量声明之前访问变量,是无法访问到的。 这是由于let/const没有变量提升(提升到作用域顶部),因此通过let/const定义的变量不会被提升到作用域顶部——也就是此时的块级作用域,因此在声明之前无法访问。 从上图可以看到,控制台的Block作用域里val…
深入js——闭包
闭包一直是很多前端开发人员跨不过去的一个坎,我也是一样。每次看各种文章好像弄懂了,但隔段时间好像又模模糊糊了,再看好像又有了新的理解,但感觉总是不能完全理解透彻。 在理解了变量环境、词法环境和作用域链等概念后,我发现理解起来容易多了,这次感觉是真的理解了。 同样,本文的内容是基…
深入js——this
this是与执行上下文绑定的,每个执行上下文都有一个this;执行上下文有3种:全局执行上下文、函数执行上下文和eval执行上下文,因此this也有3种,全局执行上下文中的this、函数执行上下文中的this和eval执行上下文中的this。eval我们很少使用,因此这里我们只…
深入js——作用域链
作用域是可访问对象的集合,确定当前执行代码对变量的访问权限。 作用域可分为静态作用域和动态作用域,JavaScript采用静态作用域,也叫词法作用域。 函数的作用域在函数定义的时候就决定了,与函数如何被调用,在何处被调用无关。 以上代码,foo函数为打印出1。虽然foo是在ba…
深入js——变量对象
文章深入js——执行上下文栈主要讲了代码执行过程中,执行上下文栈的变化,从文本开始,主要研究下执行上下文内部。 本文首先研究下变量对象。 变量对象是与执行上下文相关的数据作用域,存储了在上下文中定义的数据。包括 全局上下文和函数上下文中的变量对象有些不同,因此以下分开讨论。 在…
深入js——执行上下文栈
js的很多不太好理解的概念,比如作用域、this、闭包,可以说都与执行上下文有关,弄懂了执行上下文,再去理解这些概念就没有难度了。 因此,js对应有3种执行上下文:全局上下文、函数上下文、eval上下文。 当js执行一段代码时,可能出现很多执行上下文,那如何管理这些上下文呢?答…
vue为什么不能检测数组的变化
无法检测通过索引改变数组的操作。 我们来测试一下看看。以下例子,对遍历数组中的每一项,用Object.defineProperty对其进行监测 尤大大回答是因为性能问题。看来不是JavaScript的锅,更不是Object.defineProperty的锅了。 通过我们上面的测…
判断文本是否溢出
需求:当一个div的内容过多时,显示省略号,并提供一个显示更多的按钮;如果内容较少,正常展示不提供按钮。 方案一为Determine if an HTML element's content overflows中的最高赞回答,主要思想是对比元素的el.clientWidth和e…
v-for为什么要加key,能用index作为key么
带着这个疑问,结合各种博客和源码,终于有了点眉目。 要理解diff的过程,先要对virtual dom有个了解,这里简单介绍下。 我们都知道重绘和回流,回流会导致dom重新渲染,比较耗性能;而virtual dom就是用一个对象去代替dom对象,当有多次更新dom的动作时,不会…
下一页
个人成就
文章被点赞
94
文章被阅读
44,046
掘力值
742
关注了
25
关注者
9
收藏集
4
关注标签
19
加入于
2019-07-04