摘要: --仅用作学习记录 题目:每次爬 1 或 2 个台阶,爬上第n阶有几种爬法? 解题思路:比如要求走到第4阶的走法,因为每次走1或2,因此上一步一定是在第2阶位置或第3阶位置,因此只要求(从1走到2的走法 + 从1走到3的走法)即可,依次类推。 function climb(num) { if(num 阅读全文
posted @ 2020-12-02 16:13 #青橙# 阅读(267) 评论(0) 推荐(0) 编辑
摘要: macro-task(宏任务):包括整体代码script,setTimeout,setInterval micro-task(微任务):Promise,process.nextTick 整体script作为第一个宏任务进入主线程执行,遇到promise,new Promise立即执行;.then分发 阅读全文
posted @ 2020-12-02 15:15 #青橙# 阅读(69) 评论(0) 推荐(0) 编辑
摘要: 什么是闭包 含义:是指有权访问另一个函数作用域中的变量 优点:可以重复使用,并且不会造成变量污染。(全局变量可以重复使用,但是容易造成变量污染。局部变量仅在局部作用域内有效,不可以重复使用,不会造成变量污染。闭包则结合了全局变量和局部变量的优点) 缺点:比普通函数更占用内存,函数调用后不会销毁变量容 阅读全文
posted @ 2020-12-01 16:56 #青橙# 阅读(78) 评论(0) 推荐(0) 编辑
摘要: call、aplly、bind三种方法都能实现改变函数执行时的上下文,简单来说就是改变函数运行时的this指向 区别 1、 call(): 第一个参数表示this指向的新目标,从第二个参数开始以参数列表的形式展现 用法:a.call(b,1,2,3);表示要把a函数的this指向修改为b的this指 阅读全文
posted @ 2020-12-01 14:16 #青橙# 阅读(255) 评论(0) 推荐(0) 编辑
摘要: this是js的一个关键字,随着函数使用场合不同,this的值会发生变化。但是总有一个原则,那就是this指的是调用函数的那个对象。 应用情形1:如果一个函数fn中有this,这个函数又被上一级的对象所调用(obj.fn()),那么this指向的就是上一级的对象obj。 应用情形2:如果一个函数中有 阅读全文
posted @ 2020-12-01 10:44 #青橙# 阅读(59) 评论(0) 推荐(0) 编辑