摘要: #执行期上下文 当函数执行前,会创建一个称为执行期上下文的内部对象。 一个执行期上下文定义了一个函数执行时的环境,函数每次执行时对应的执行上下文都是独一无二的 多次调用一个函数会导致创建多个执行上下文,当函数执行完毕,它所产生的执行上下文被销毁。 #[[scope]] 作用域 每个javascrip 阅读全文
posted @ 2021-08-01 18:39 独舟者 阅读(34) 评论(0) 推荐(0)
摘要: #代码分类 全局代码 局部代码 #全局执行上下文 在执行全局代码前将window确定为全局执行上下文(GO) 对全局数据进行预编译 var定义的全局变量添加为window的属性 function声明的全局函数添加为window的方法 this赋值window 开始执行代码 #函数执行上下文 执行函数 阅读全文
posted @ 2021-07-31 16:25 独舟者 阅读(57) 评论(0) 推荐(0)
摘要: #JS运行机制 语法分析 预编译 解释执行 #预编译 函数声明整体提升 变量声明变量名提升 ##预编译前奏 如果变量未声明就赋值,此变量为全局对象所有 var a = b = 123 //在局部作用域中声明 此时b为全局变量 一切声明的全局变量,全为window的属性 ##预编译开始 创建AO对象 阅读全文
posted @ 2021-07-29 19:19 独舟者 阅读(41) 评论(0) 推荐(0)
摘要: ![](https://img2020.cnblogs.com/blog/2149127/202107/2149127-20210728162926319-1286734734.png) 阅读全文
posted @ 2021-07-28 16:27 独舟者 阅读(32) 评论(0) 推荐(0)
摘要: 访问一个对象属性时 先在自身属性中查找 如果没有找到,再沿着__proto__向上查找 最终没找倒就返回undefined 别名:隐式原型链 作用: 查找对象的属性(方法) 阅读全文
posted @ 2021-07-21 18:33 独舟者 阅读(31) 评论(0) 推荐(0)
摘要: #显式原型 每个函数(function)都有一个prototype,即显式原型(属性) 默认指向一个空Object对象 #隐式原型 每个实例对象都有一个__proto__, 可称为隐式原型 对象的隐式原型 (proto) 的值为其对应构造函数的显式原型 ( prototype ) #总结 函数的pr 阅读全文
posted @ 2021-07-20 18:09 独舟者 阅读(107) 评论(0) 推荐(0)
摘要: #函数的prototype属性 每个函数都有一个prototype属性,它默认指向一个Object空对象(即:原型对象) 原型对象有一个属性constructor,它指向函数对象 #给原型对象添加属性(方法) 作用:函数的所有实例对象就会拥有原型中的属性(方法) 二者像祖先与子代的关系!函数的原型对 阅读全文
posted @ 2021-07-20 16:29 独舟者 阅读(52) 评论(0) 推荐(0)
摘要: #this是什么? 任何函数本质上是通过某个对象调用,如果没有直接指定就是window 所有函数内部都有一个变量this this值是调用该函数的对象 #如何确定this的值? test(): window p.test(): p new test(): 新创建的对象 p.call(obj): ob 阅读全文
posted @ 2021-07-20 15:42 独舟者 阅读(41) 评论(0) 推荐(0)
摘要: #理解 IIFE全程: Immediately-Invoked Function Expression (立即执行函数) (function (){ //立即执行匿名函数 ... })() #作用 局部作用域执行 不会污染外部 (全局) 命名空间 编码js模块 阅读全文
posted @ 2021-07-19 16:30 独舟者 阅读(40) 评论(0) 推荐(0)
摘要: #什么是回调函数? 1.自定义的 2.没有调用 3.自动执行 #常见的回调函数 dom事件回调 定时器回调 ajax请求回调函数 生命周期回调函数 阅读全文
posted @ 2021-07-19 16:10 独舟者 阅读(39) 评论(0) 推荐(0)