2句话,1道题,1张图:带你捋清楚【原型和原型链】

2020-12-23
阅读 4 分钟
1.1k
@[toc]0 / 两句话JS中面向对象的底层处理机制:第一句话: => 每一个(除了三种特例,以外的)函数数据类型,都天生自带一个属性:<u>prototype原型属性</u>,其属性值是:<u>一个对象</u>(Function.prototype除外)=> 这个prototye原型对象中天生自带一个属性:<u>constructor&lt...

new的三步曲 | 初识面向对象

2020-12-22
阅读 2 分钟
873
@[toc]0 / 编程语言有哪些面向对象 OOP :java、javascript、php、C#(ASP.NET)、Python、GO、C++、Ruby.....面向过程 POP :C标记语言:HTML、CSS面向对象编程,我们需要学什么呢?对象、类、实例① 对象:万物皆对象(这是泛指)② 类:是对 <u>对象</u> 的划分,按照其<u>功能结构特点</u>等,...

思维导图 | 全面分析let和var的区别

2020-12-21
阅读 4 分钟
1.4k
0 / 可以声明变量的关键字EC5:var/functionEC6:let/const/import1 / let VS const1、let 声明一个变量,变量存储的值可以改变2、const 声明的变量,一旦赋值,则不能再与其他值关联【不允许指针重新指向】 {代码...} △ 不能改 {代码...} △ const 不更改指针的指向即可2 / let VS var<u>变量提升</u>:在当前...

JavaScript | 这些数据类型检测你确定会了吗?

2020-12-17
阅读 4 分钟
1k
0 / JS中创建值的两种方式JS 中创建一个值有两种方案:① 字面量方式 ② 构造函数方式注意:构造函数方式① 不能 new Symbol/new BigInt② 可以Object(symbol)/Object(bigint)其他数据类型值也可以,但是排除null/undefined {代码...} △ 创建值的两种方式对于基本数据类型,两种创建方式结果是不一样的:① 字面量方式得到的...

JavaScript | 图解 | 闭包应用之循环事件绑定的N种解决办法

2020-12-15
阅读 4 分钟
1.2k
1、函数执行会形成一个私有上下文,如果上下文中的某些内容(一般是指堆内存地址)被上下文以外的一些事物(例如:变量/事件绑定等)所占用,则当前上下文不能被出栈释放【浏览器的垃圾回收机制GC所决定的】

从EC/VO/AO堆栈内存和作用域角度分析compose函数 | 跟着redux大佬学编程思想

2020-12-14
阅读 4 分钟
857
@[toc]0 / 热热身 {代码...} △ 答案是?△ 图3.7_图解1 / redux 中的compose函数 {代码...} △ redux中的compose函数我们普通写调用函数,但是可读性太差 {代码...} △ 普通调用函数那么,需要写一个可读性较高的组合函数: {代码...} △ 调用compose函数compose(div2, mul3, add1, add1)传参的顺序与div2(mul3(add1(add1(0)...

JavaScript | 思维导图 | 这些高阶函数你都会了吗?

2020-12-11
阅读 11 分钟
1.4k
0 / 闭包作用域练习题闭包的作用:① 保护 ② 保存 {代码...} △ 结果是?(1)++i 和 i++ 的区别 {代码...} △ 结果是? {代码...} △ 结果是?i++/++i 一定是数学运算,+N 也是把N变为数字类型的值++i 和 i++ 的区别:[相同点]:都是自身基础上累加1[不同点]:计算和累加的顺序​ ++i 自身先累加1,再根据累加后的结果进行运...

JavaScript | 思维导图 | 掌握变量提升的处理机制

2020-12-10
阅读 4 分钟
1.1k
变量提升:在当前上下文中(全局/私有/块级),JS代码自上而下执行之前,浏览器会处理一些事情(可以理解为词法解析的一个环节,词法解析一定是发生在代码执行之前的):

JavaScript | 深度剖析4大数据类型转换规则

2020-12-09
阅读 5 分钟
1.4k
把其他类型(string/boolean/null/undefined/symbol/bigint/object)使用Number转换为数字:

JavaScript 的函数底层运行机制

2020-12-08
阅读 4 分钟
976
0 / 题(1)第一题 {代码...} △ 引用数据类型:object(2)第二题 {代码...} △ 引用数据类型:function这些题是不是很简单?我们主要看逻辑:1 / 引用数据类型:object在Web浏览器中执行JS代码,会开辟一块栈内存来作为执行环境:ECStack(Execution Context Stack)会开辟一块栈内存供全局代码执行:全局执行上下文 EC(...

8大知识点+16篇总结(含31道面试题解)+9张思维导图 | 梳理JavaScript堆栈内存和闭包作用域

2020-12-07
阅读 57 分钟
2k
零、分篇幅看16篇:分篇幅看,在这里一、 JS的9种数据类型的一些细节点(1)JS中的数据类型基本数据类型1、 string ,可以用双引号、单引号、反引号2、 number ,比如:值有123/1.2/NaN/Infinity/-Infinity...3、 boolean,值为true/false4、 null,值为null5、 undefined,值为undefined6、 bigint7、 symbol,用于创建...

OOP | 构造函数模式

2020-07-24
阅读 4 分钟
1.3k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 构造函数模式 单例模式、高级单例模式: 优点:把描述事务的信息都放到一个命名空间中进行归类,防止全局变量污染 缺点:不能批量生产 工厂模式: 优点:用函数来封装创建对象的细节,低耦合(减少一个一个创建对...

OOP | 单例设计模式和工厂设计模式

2020-06-23
阅读 3 分钟
1.2k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 0 / 单例设计模式 假设:你需要录入两个人的信息:李雷和韩梅梅。不要问我他们是谁 我本来想举个例子,叫"妈妈喊你去相亲"。后来一想,换个例子吧,被妈妈说也就算了,看个代码还要被扎心,太可怜了吧 在最开始学...

图解 | THIS的题目

2020-06-23
阅读 3 分钟
1.1k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 0 / THIS 找THIS的方法: 1、给元素的某个事件绑定方法,当事件触发执行的时候,方法中的this就是当前操作的元素本身 2、当方法执行时,我们看方法前面是否有【点】:没有【点】,this=>window(严格模式:undef...

整理 | 数组的常用方法

2020-06-23
阅读 5 分钟
976
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 0 / 数组 数组是引用数据类型的对象数据类型(特殊的对象)。 创建一个数组,需要开辟一个堆内存,以键值对的形式存储数组内容。 (1)数组属性名默认是数字。数字从零开始递增,表示当前是第几项,把这个数字称...

理解 | 如何判断THIS(一、二)

2020-06-23
阅读 3 分钟
1.3k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 0 / THIS对象 this对象是函数执行的主体(不是上下文),即:是谁把函数执行的,那么执行主体就是谁。 谁触发这个函数执行/调用了,谁就是this。 函数定义:开辟一个堆内存,把函数体的内容以字符串的格式存储进...

下 | iview的Table组件合并列,升级代码

2020-05-06
阅读 6 分钟
2k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 【前情提要】 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和作用域链 练习题 | ...

读源码 | 跟着 iview 的大佬们学编程思想

2020-05-06
阅读 9 分钟
1.9k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 【前情提要】 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和作用域链 练习题 | ...

理解 | 堆内存栈内存释放、null和{}、undefined的区别

2020-05-06
阅读 4 分钟
4.4k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 【前情提要】 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和作用域链 练习题 | ...

案例 | 闭包作用:保护和保存

2020-03-29
阅读 6 分钟
1.7k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 前情提要: 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和作用域链 练习题 | 作...

图解 | 理解闭包

2020-03-29
阅读 2 分钟
1.2k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 前情提要: 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和作用域链 练习题 | 作...

练习题 | JavaScript的作用域和作用域链

2020-03-29
阅读 2 分钟
2.5k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 【前情提要:点击蓝色字可查看】 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 图解 | 作用域和...

解决 | iview低版本实现表格拖拽,滚动条列宽计算问题

2020-02-18
阅读 2 分钟
2.6k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 如果大佬觉得我的方案太low,请打脸轻一点~如果大佬有更好的方案,请不吝赐教~ 0 / 需求 "iview": "2.13.0"由于一些原因,版本并没有升级【os:不要问我什么原因~】。 项目中表格实现的功能: 普通表格 固定列 自定义选择展...

图解 | JavaScript的作用域和作用域链

2020-02-10
阅读 3 分钟
1.5k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 前情提要: 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 题目 | 带VAR和不带VAR的区别 图解 | 带VAR和不带VAR的区别 总结 | LET和VAR区别(三、四) 0 / GO/VO/AO ECStack:Execution Cont...

Promise | all、race 方法(代码版)

2019-11-07
阅读 3 分钟
1.6k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ Promise 这次,主要介绍 Promise 的all方法和race方法的原理。 【Promise | 手写原理】【Promise | catch、finally 方法】 all 方法 使用 {代码...} 思路 参数:数组 链式调用then方法:可以 all 方法返回一个新的Promise 返...

Promise | 想要一次测试通过,这样做

2019-10-31
阅读 1 分钟
1.4k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing公号首发,请监督我完成1篇/周 Promise 原理的代码,写了7遍,累计3遍是一次通过测试的。 随后的几天就写顺手了,基本3遍以内就通过测试了。 现在一遍即过。 通过几天集中的刻意训练,我发现这样做更有效: 知道什么是对的。 把错误的备份,梳理思路排查错误。...

Promise | catch、finally 方法(代码版)

2019-10-31
阅读 2 分钟
2.9k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ Promise 的方法 经过手写 Promise 的原理后,再来理解 Promise 的方法,会更加容易了。 好啦,我们直接上代码~ 原理传送门 → Promise | 原理(代码版) catch 方法 使用 catch 方法是 then 方法的语法糖,只接受 rejected 态...