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,用于创建...

JavaScript 数据类型的一些细节点

2020-11-07
阅读 5 分钟
1.4k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画❥❥❥❥点个赞,让我知道你来过~❥❥❥❥0 / JS 中的数据类型的一些细节点(1)JS中的数据类型基本数据类型1、 string ,可以用双引号、单引号、反引号2、 number ,比如:值有123/1.2/NaN/Infinity/-Infinity...3、 boolean,值为true/false4、 null,值...

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区别(三、四) 图解 | 作用域和作用域链 练习题 | ...

案例 | iview中Table:拖拽适配列、自定义固定列、合并行

2020-04-07
阅读 14 分钟
3.8k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 0 / 更新Table "iview": "2.13.0",对比最新版本的iview:4.1.3中的Table功能,获取最新功能:拖拽、合并行等。 【PS:由于一些原因不能统一升级整个iview,我动了源码这很不好,望大佬们不吝赐教更好的方案~】 1 / Table的拖...

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

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...

题目 | 带VAR和不带VAR的区别

2020-01-20
阅读 1 分钟
1.3k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 前情提要: 题目 | let和var的区别(一、二) 图解 | let和var的区别(一、二) 1 / 请回答 {代码...} {代码...} 2 / 带var和不带var的区别 来,看图说话 △ 题目 | 带VAR和不带VAR的区别 △图解 | 带VAR和不带VAR...

题目 | let和var的区别(一、二)

2020-01-20
阅读 2 分钟
842
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing图 / 自己画 ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ 来来来~,请拿出纸和笔,画一画算结果,算完后再用浏览器运行哦~ 请做题 输出结果是? {代码...} 输出结果是? {代码...} 输出结果是? {代码...} 输出结果是? {代码...} 输出结果是? {代码...} 浏览器执行代码...

Promise | 手写原理(代码版)

2019-09-29
阅读 11 分钟
1.4k
文 / 景朝霞来源公号 / 朝霞的光影笔记ID / zhaoxiajingjing ❥❥❥❥点个赞,让我知道你来过~❥❥❥❥ Promise的好处 Promise 可以解决的问题 把你从回调地狱中解救出来 让你优雅的捕获错误 为你分担异步并发的难题 {代码...} Promise 使用的例子 状态变化 Promise 有3种状态 pending 等待态 fulfilled 成功态 rejected 失败态 ...