自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 this的指向-普通函数/构造函数/call

在构造函数中,this指向实例对象,普通函数中,this指向它的调用者,谁调用这个函数,this就是谁call方法也可以修改this指向普通函数中function fn() { console.log(this);}fn(); // Window????上面例子中,是普通函数,没有调用对象,其实调用者就是Window,所以this指向Windowvar obj = new Object();obi.say = function() { console.log(this);}obj

2020-06-08 20:55:28 235

原创 堆栈内存及闭包

堆栈内存及闭包JS中的堆栈JS中的堆栈let a = 0;let b = a;b++;aleart(a) // "0"let o = {};o.a = 0;let b = o;b.a = 10;aleart(o.a) // "10"aleart()输出的结果都是字符串,toString()JS中的数据类型:基本类型(值类型):number string boolean null undefined引用类型:object function特殊类型:symbol栈内

2020-06-03 21:17:01 334

原创 提升 & 作用域闭包

提升 & 作用域闭包提升作用域闭包提升问:先有????(赋值)还是先有????(声明)?答:先有蛋。只有声明本身会被提升,而赋值或其他运行逻辑会留在原地。函数声明和变量声明都会被提升,但是函数会首先被提升,然后才是变量foo(); // 1var foo; // 变量声明function foo() { // 函数声明 console.log( 1 );}foo = funct...

2020-04-30 16:02:33 103

原创 函数作用域 & 块作用域

函数作用域函数作用域:属于这个函数的全部变量都可以在整个函数的范围内使用和复用(事实上在嵌套的作用域中也可以使用),在函数外部无法访问到。隐藏内部实现:可以把变量和函数包裹在一个函数的作用域中,然后用这个作用域来隐藏它们。为什么“隐藏”变量和函数是一个有用的技术?–》“最小授权/最小暴露原则”,指在软件设计中,应该最小限度的暴露必要内容,而将其他内容都隐藏起来。规避冲突:可以避免同名...

2020-03-29 19:15:17 269

原创 词法作用域 & 欺骗语法

词法作用域词法作用域是定义在词法阶段的作用域,是在写代码时将变量和块作用域写在哪里来决定的。无论函数在哪里/如何被调用,它的词法作用域都只由函数被声明时所处的位置来决定欺骗词法欺骗词法作用域会导致性能下降1. eval:eval(…)可以接受一个字符串为参数,并将其中的内容视为好像在书写时就存在于程序中这个位置的代码。换句话说,可以在你写的代码中用程序生成代码并运行,就好像代码是...

2020-03-22 20:46:47 138

原创 作用域 & LHS、RHS查询

1. 作用域作用域是一套规则,用于确定在何处以及如何查找变量(标识符)。如果查找的目的是对变量进行赋值,就会使用LHS查询,如果目的是获取变量的值,就会使用RHS查询。2. LHS、RHS查询当变量出现在赋值操作的左侧时进行LHS查询,出现在右侧时进行RHS查询。RHS:查找某个变量的值(谁是赋值操作的源头),LHS:查询变量的容器本身(谁是赋值操作的目标)。下面这个例子总共有3...

2020-03-19 19:46:54 216

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除