JavaScript 学习
文章平均质量分 93
JavaScript 学习
sonicwater
这个作者很懒,什么都没留下…
展开
-
JavaScript学习(十) —— OOP之对象
JavaScript支持面向对象(Object Oriented Programming, OOP)编程,面向对象代码的封装和实例化对象等操作都非常优雅,它和闭包结合自执行函数实现封装的方式非常不同,向高手进阶的前端同学一定要掌握。原创 2021-03-01 17:42:29 · 149 阅读 · 0 评论 -
JavaScript学习(九) —— 函数式编程
函数式编程(Functional Programming)是种编程范式,它将电脑运算视为函数的计算。函数编程语言最重要的基础是λ演算(lambda calculus),而且λ演算的函数可以接受函数当作输入(参数)和输出(返回值)。原创 2021-02-19 15:43:08 · 516 阅读 · 0 评论 -
JavaScript学习(八) —— 函数
函数在JavaScript中是很特别的存在,之前介绍过的函数调用栈、执行上下文、变量对象、作用域和作用域链、this的确认、闭包等都和函数相关。这里介绍一些关于函数之前没提到的内容。原创 2021-02-19 15:21:17 · 816 阅读 · 0 评论 -
JavaScript学习(七) —— call、apply、bind
介绍完this的指向问题,有必要专门说一下call、apply、bind三个能改变this指向的函数方法。在JS中,函数本身也是对象,它也有构造函数(Function),call、apply、bind三个方法定义在函数的构造函数的原型上(Function.prototype),我们声明的函数(即一个Function的实例化对象)都会获得这三个方法。先对比一下call和apply方法:var str = 'global';var obj = { str : 'local'}function.原创 2021-02-04 17:02:47 · 197 阅读 · 0 评论 -
JavaScript学习(六) —— this
在函数作用域中使用this,想一想有没有一些场景让你感到困惑,this指向不是你期望的结果。一时又不知道问题出在哪,需要重新去看this相关的知识,这篇文章就要详细解释this。原创 2021-02-03 15:18:04 · 223 阅读 · 0 评论 -
JavaScript学习(五) —— 闭包
本文要结合之前介绍过的一些JS机制,解释闭包的特性。解释闭包我一直认为用一段抽象的文字解释一个复杂的概念,写的人累,看的人也会累。用一个实际例子说明闭包,简单省事:function A(){ // A函数 var n1 = 10; var n2 = 20; function B(){ // B函数 return n1 + n2; } return B;}var n = A();console.log(n()); // 30上面代码中,有一个定义在全局上下文.原创 2021-01-27 19:00:39 · 318 阅读 · 1 评论 -
JavaScript学习(四) —— 作用域、作用域链
因为ES6有了块级作用域,我们还是以ES5为基础。回顾一下前一篇文章变量对象、活动对象,其中有关于在函数级作用域中变量提升和函数提升的JS特性的部分内容。本文结合之前几篇系列文章,讨论和作用域、作用域链有关的问题。原创 2021-01-26 15:37:54 · 313 阅读 · 1 评论 -
JavaScript学习(三) —— 变量对象、活动对象
JS代码在浏览器中运行时,解释器执行代码到调用某个函数时,被调用的函数加入Call Stack栈,创建对应这个函数的执行上下文,在这个当口,解释器接下来做了什么?原创 2021-01-08 19:08:42 · 1164 阅读 · 0 评论 -
JavaScript学习(二) —— 执行上下文
我们编写的JS代码在运行时经过了两个步骤:编译过程:在编译过程中生成执行上下文,和生成可执行代码。执行过程:执行可执行的代码,输出结果。在创建执行上下文的时候会先确定当前代码所在的执行环境。执行环境有三种:全局环境:JS代码运行时会首先进入全局环境,对应创建全局执行上下文函数环境:当调用函数时,会创建这个函数的执行上下文eval(不推荐使用,暂且忽略)JS代码运行时会首先进入全局环境,创建全局执行上下文。全局环境只有一个,全局执行上下文也只有一个。但是在这个全局环境中可能有一个或多个原创 2021-01-07 18:23:11 · 407 阅读 · 2 评论 -
JavaScript学习(一) —— 内存机制
作为前端开发,应该很少有人关注与内存有关的部分。我在刚入门前端开始学习有关闭包、作用域(链)、深拷贝对象、按值和引用传递等概念时,经常以为自己弄懂了,可遇到实际问题时又很糊涂。本次记录一下js的内存机制。1...原创 2021-01-04 18:01:43 · 1584 阅读 · 0 评论