时间:2021-05-26
本文介绍的是setTimeout函数,延迟执行函数里的执行上下文,分享给大家供大家参考学习,来看看详细的内容:
(1)ES5中,setTimeout里面的函数的执行上下文为全局上下文,举例来说:
function log(){ setTimeout(function(){console.log(this.id)},100)}var id=42log.call({id:21})//输出的结果为42我们可以看到setTimeout,被延迟执行的函数,里面的this,指向的是全局作用域,也就是这个函数的上下文为全局上下文。
(2)在ES6的箭头函数中,setTimeout里面,如果执行了一个箭头函数,那么这个函数的执行上下文为定义这个箭头函数所在的函数。
function log(){ setTimeout(()=>{ console.log(this.id) },100)}var id=42;log.call({id:21})//这次输出的是21总结:
因为ES6中,箭头函数的this,规定的指向定义这个箭头函数所在的那个函数。于是这里箭头函数里面的this,就固定bind了{id:21}。
好了,以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
执行上下文(Executioncontext)执行上下文(简称上下文)决定了Js执行过程中可以获取哪些变量、函数、数据,一段程序可能被分割成许多不同的上下文,每
JS中作用域的概念: 表示变量或函数起作用的区域,指代了它们在什么样的上下文中执行,亦即上下文执行环境。Javascript的作用域只有两种:全局作用域和本地
一执行上下文?1什么是执行上下文?执行上下文就是当前的JavaScript代码被解析和执行时所在环境的抽象概念,JavaScript中运行任何的
首发于:https://mingjiezhang.github.io/。在JavaScript中,this对象是运行时基于函数的执行环境(也就是上下文)绑定的。
1.each(callback)官方解释:返回值:jQuery概述以每一个匹配的元素作为上下文来执行一个函数。意味着,每次执行传递进来的函数时,函数中的this