闭包和内存泄漏

闭包有权访问另外一个函数作用域中变量的函数。闭包是指那些能够访问自由变量的函数.自由变量是指在函数中使用的,但既不是函数参数也不是函数的局部变量的变量。闭包=函数+函数能够访问的自由变量。每一个函数都会拷贝上级作用域,形成一个作用域链条。闭...

模块化

特点1.解决命名污染,全局污染,变量冲突等2.内聚私有,变量不能被外部访问3.更好的分离,按需加载4.引入其他模块可能存在循环引用问题5.代码抽象,封装,复用和管理6.避免通过script标签从上至下加载资源7.大型项目资源难以维护,特别是多人合作的...

改变this指向的方法

(bind/call/apply)三者都是用来重新定义this这个对象的一、三者的区别:1、调用上 123456789101112131415let name ="www",age ="17"...

继承方式

构造函数会在每一个实例上都创建一遍!使用原型模式定义的属性和方法由所有实例共享!原型链 12345678910function Parent(){ this.name = 'kevin';}Parent.pr...

构造函数

构造函数在JavaScript中,通过new来实例化对象的函数叫构造函数(函数没有通过new实例化对象,这个函数就是普通函数),也就是初始化一个实例对象,对象的prototype属性是继承一个实例对象。构造函数的命名一般会首字母大写 为什么需要使用构...

函数

函数声明使用function的函数声明比函数表达式优先提升变量对象的创建过程中,函数声明比变量声明有更为优先的执行顺序无论在什么位置声明了函数,都可以在同一个执行上下文中直接使用 函数表达式也叫匿名函数函数表达式使用var/let/...

类型转换

类型 6种基本类型null undefined number stringify boolean symbol1种引用类型object 对象转换为基本类型 对象转换为字符串 1234567891011//模拟toString返回的不是基本...

for_in和for_of的区别

一句话总结:for.,.in是为遍历对象属性而构建的,遍历的是index,而for,,,of是为了遍历数组的,遍历的是value 12345678910111213141516171819202122232425const arobj = 100:...

判断数据类型

一、常见判断:typeof 这个方法很常见,一般用来判断基本数据类型,如:string,number,boolean,symbol,bigint(es10新增一种基本数据类型bigint),undefined等。返回数据类型的字符串形式 type...

数据类型

原始类型Undefined,Null,Boolean,Number,String(没有int,object类型)ES6新增了Symbol和BigInt. Symbol代表独一无二的值,最大的用法是为对象定义唯一的属性名 BigInt可表示任意大小的...

1234