JS(十七)this

从零开始学python(十七)JS逆向专题,看完直接入门 今天讲述Python框架源码专题最后一个部分,爬虫集群部署,前面更新了十五个从零开始学python的系列文章,分别是编程语法/网络编程/多线程/多进程/协程/数据库机器学习/全栈开发/数据分析/Hadoop篇/Spark篇爬虫/自动化和抓包//scrapy/feapder/爬虫集群部署可以往前翻我的文章进行查看适用于零基础学习和进阶人群的python资源① 腾讯认证python完整项目实战教程笔记PDF② 十几个大厂python面试专题PDF。 阅读详情

写在最前面

this
  • 函数预编译过程 this --> window
  • 全局作用域里 this --> window
  • call/apply 可以改变函数运行时this指向
  • obj.function();function()里面的this指向obj
函数预编译过程 this --> window
function test(c){
    var a = 123;
    function b(){};
}

test();

AO{
    arguments:[1];
    this : window;
    c : 1,
    a : 123;
    b : function(){};
}

new test();
obj.function();function()里面的this指向obj

谁调用this 就会指向这个函数

var name = "222";
var a = {
    name : "111",
    say : function(){
        console.log(this.name)
    }
}

var fun = a.say;
fun();//在全局下执行 打印222
a.say();//在a调用say this指向a 打印111

var b = {
    name : "333",
    say : function(fun){
        fun();
    }
}

b.say(a.say);//因为还是没有人调用fun(),所以还是在全局下调用的fun();所以打印的是222
b.say = a.say;
b.say();//可以看到的是b.say的属性值换成了a.say也就是fun(),打印的是333

可以关注一下

飞塔防火墙认证绕过漏洞(CVE-2022-40684)深度剖析与实战复现 本文深度剖析了Fortinet飞塔防火墙高危认证绕过漏洞CVE-2022-40684的原理与影响。该漏洞允许攻击者通过构造包含特定Forwarded头和User-Agent的HTTP请求,无需凭证即可绕过认证,以管理员身份访问设备。文章详细演示了从环境搭建到实战复现,最终植入SSH密钥获取控制权的完整过程,并提供了漏洞挖掘技巧与关键防御建议。 阅读详情

相关推荐

【Clickhouse从入门到精通】第51篇:ClickHouse权限管理体系详解

摘要 本文是ClickHouse权限管理系列文章的第51篇,重点解析ClickHouse RBAC权限体系中的GRANT/REVOKE机制。文章详细介绍了GRANT语句的基础语法与权限类型,包括SELECT、INSERT等常规权限以及WITH GRANT OPTION转授权功能。特别深入讲解了列级权限的实现方式,通过SELECT(col1,col2)语法实现字段粒度的访问控制,并展示了权限查询与验证方法。本文还对比了ClickHouse 20.4版本前后权限管理体系的差异,为构建安全的多租户数据平台提供了关

xyghehehehe的专栏 440

this面试题

下面代码会打印什么var name = "222"; var a = { name: "111", say: function () { console.log(this.name); } } var fun = a.say; fun(); //222 a.say(); //111 var b = { name : "333", say: function (func){ f...

huyao的博客 2292

Aruba无线控制器实战:如何用Client Match优化企业办公区漫游(附SNR调优技巧)

本文深入解析了如何利用Aruba无线控制器的Client Match功能优化企业办公区无线漫游体验。通过实战配置,详细阐述了基于SNR(信噪比)的精细化调优策略,包括阈值设定、负载均衡与场景化参数调整,旨在解决终端粘滞、乒乓漫游等问题,实现智能、平滑的无缝漫游。

weixin_28318011的博客 230

试题:this 指向问题

var name = "222" var a = { name : "111", say : function(){ console.log(this.name) } } var fun = a.say; fun()// 222 此行代码提取出来就为 function(){console.log(this.name)},没有对象调用,因此此时this指向为window a.say()// 111 对象a调用其say()函数,此时this指向就位a,因此此时打印出来的就是为对象a下的属性 var

mike_95的博客 467

K230开发板实战:YOLOv8n模型部署全流程(附常见报错解决方案)

本文详细介绍了在K230开发板上部署YOLOv8n模型的完整流程,包括模型选型、配置文件优化和运行时调优。特别针对常见的'生成部署文件异常'等问题提供了实用解决方案,帮助开发者高效完成嵌入式AI模型的部署与优化。

g8f9d0s1a2的博客 1048

3DMax高效建模与人工智能:一场颠覆传统创作的效率革命

AI与3DMax的结合,不仅是工具效率的升级,更是一场创作范式的革命。从“手动雕刻”到“智能共生”,设计师的角色正从执行者转向决策者。正如网友所言:“AI不是替代人类,而是赋予凡人以神笔。”在这场变革中,唯有拥抱技术、深耕创意,方能在数字艺术的浪潮中立于潮头。参考文献与工具推荐技术原理:火星时代资讯《人工智能和三维建模》工具实测:哔哩哔哩《tyDiffusion 3dsMax应用》9、Tripo AI官网教育案例:原创论文《人工智能技术介入三维动画课程建设》

m0_46478534的博客 3011

this

详解this指向以及关于this的面试题

AMAZING 409

华为昇腾(Ascend)开发考试原题目解析 (2024) (题库一)——HCIP-AI-Ascend Developer——第一部分

给出一段代码如下,以下哪个选项描述错误?...A.中的语句由 MindSpore 接管,有语法限制B. 算子在中定义,并用来建立网络C.__init__()中的语句由 Python 解析执行D. 网络定义必须继承基类nn.Cell正确答案: B__init__()用于定义算子和网络层。所有需要用到的层(如卷积层、全连接层等)都应该在这里进行实例化。这部分代码由Python解释器执行。用于构建前向计算图。它调用在__init__()中定义好的算子和层来描述数据的流向。

qq_38334677的博客 1053

javascript第十七课:this使用

javascript第十七课:this使用 例如,我们要一个元素的值 function f1(){ alert(this.id); } document.getElementByid('#id').onclick=f1; //将函数赋值给事件 ...

alonlong2016的博客 145

手把手教你学Simulink——基于Simulink的多用户MIMO系统仿真建模示例

多用户MIMO概述在多用户MIMO系统中,基站配备多个天线,可以同时与多个用户进行通信。利用空间复用技术,不同用户的信号被分配到不同的空间流上,从而实现频谱资源的高效利用。多用户MIMO的核心挑战包括信道估计、波束成形设计以及干扰管理。关键技术点波束成形:通过调整发射信号的相位和幅度,在特定方向上增强信号强度并减少干扰。信道估计:获取每个用户的信道状态信息(CSI),用于优化波束成形矩阵。调制与解调:选择合适的调制方式(如QPSK、16-QAM等)以适应不同用户的信道条件。干扰消除。

MHD0815的博客 270

Python全栈入门到实战【AI实战篇 01】DeepSeek官方API全流程实战,第一个AI项目前置必备

文章摘要 本文介绍了基于DeepSeek API开发智能助手的前期准备和基础调用流程。内容涵盖: 前期准备:访问DeepSeek官网、完成账号注册与实名认证。 API Key获取:充值并创建API Key,强调密钥安全保存的重要性。 查阅文档:定位官方接口文档中的Python调用示例。 环境配置:安装openai依赖包,配置环境变量存储API Key。 代码编写:使用Python调用DeepSeek API实现基础对话功能。 调试与验证:解决常见问题,确保API调用成功。 适合零基础开发者跟随操作,快速入门

那些看似不起波澜的日复一日,会在某天让你看到坚持的意义 3734

javascript基础学习系列四百八十七:this 对象

getIdentityFunc()返回函数,所以object.getIdentityFunc()()会立即调用这个返回的函数,即使在外部函数返回之后,that 仍然指向object,所以调用object.getIdentityFunc()()第一行调用object.getIdentity()是正常调用,会返回"My Object",因为this.identity。如果作为某个对象的方法调用,则this 等于这个对象。达式的值是函数本身,this 值不再与任何对象绑定,所以返回的是"The Window"。

m0_68635815的博客 408

华为OD机试真题 新系统-等距二进制判断(C/C++/Py/Java/Js/Go)

华为OD机试 新系统真题【等距二进制判断】,提供C语言、Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解,以及在线OJ模拟做题。华为OD机试真题【等距二进制判断】

qq_45776114的博客 1086

(三十七)js改变this指向的方法

最近又遇到了JacvaScript中的call()方法和apply()方法,而在某些时候这两个方法还确实是十分重要的,那么就让我总结这两个方法的使用和区别吧。 1.改变函数内部的this指向的三种方法:call(),apply(),bind() 2. 相同点:都可以改变this指向。 都是在特定的作用域中调用函数,等于设置函数体内this对象的值,以扩充函数赖以运行的作用域。 一般来说,t...

weixin_34403693的博客 81

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

JS基础知识(二十七):this和作用域

文章目录一、this1.1 this1.2 call、apply、bind1.3 call、apply应用1.4 bind应用二、作用域2.1 作用域2.2 作用域链2.3 with语句2.4 词法作用域2.5 动态作用于——运行时确定 一、this 1.1 this this:this表示对当前对象的引用,this随着执行环境的改变而改变 this使用 this指向 方法中使用 this表示方法所属的对象 单独使用 this表示全局对象 函数中使用 this表示全局对象(在函数

前端 1248

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

【js学习笔记十七】普通函数中的this指向问题解决方案call

前言 我是歌谣 我有个兄弟 巅峰的时候排名c站总榜19 叫前端小歌谣 曾经我花了三年的时间创作了他 现在我要用五年的时间超越他 今天又是接近兄弟的一天人生难免坎坷 大不了从头再来 歌谣的意志是永恒的 放弃很容易 但是坚持一定很酷 导语 歌谣 歌谣 如下的代码报错了 怎么解决 //口诀 谁调用就会指向谁 这边是普通函数 直接报错this.fang is not a function var name="geyao" var fangfang = {

geyaoisnice的博客 1567

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

JavaScript学习总结——this指向

函数预编译过程 this ——> window 全局作用域里 this——> window call/apply 可以改变函数运行时this指向 obj.func(); func()里面的this指向obj (谁调用方法,方法里的this指向谁) var name = '222'; var a = { name: '111', say: function() { cons...

qq_41591033的博客 265

javascript this指向和改变this指向的call、apply、bind三个方法

1、全局作用域下 window2、普通函数 window3、立即执行函数IIFE window4、严格模式,全局作用域中的this指向5、对象中的方法中的this谁调用指向谁(指向调用它的这个对象)6、注册事件,指向事件源(给谁注册的事件就指向谁)

小十七的个人分享博客 785

JavaScript学习记录十七

apply和call方法的使用     //apply和call的使用     //作用:可以改变this的指向     //apply和call方法中如果没有传入参数,或者是传入的是null,那么调用该方法的函数对象中的this就是默认的window     *JavaScript中存在继承,通过调用apply或call传过去的第一个参数来动态指定方法中的 this . fun...

qq_34117624的博客 231

第十七章 this指向

第十七章 this指向

Girasoles的博客 229

前端学习-环境this对象以及回调函数(二十七)

前端学习之环境this对象以及回调函数的学习

m0_74246993的博客 334

JS学习笔记

e.target.tagName 是点击的对象具体是什么。因为剩余参数是真数组,可以使用pop,push方法。拷贝对象之后,里面的属性值是简单数据类型直接拷贝值。e.target(target就是点击的对象)在事件回调函数中绑定的第一个参数就是事件对象。普通函数里面this指向的是window。如果属性值是引用数据类型则拷贝的是地址。this指向就近外层作用域中的this。有短横线链接的属性,采取小驼峰命名法。谁调用函数,函数中的this就指向谁。对象解构的变量名可以重新改名,结构。

m0_74375748的博客 1604

第十七节:JavaScript 事件(二)

3.5.10 事件对象 event event 对象 <button>点击</button> <script> let btn = document.querySelector('button'); btn.onclick = function (event) { // 事件处理程序 // 获取标签名 console.log(event.targht.nodeName);

孤安先生的博客,作者主站正在重构中,敬请期待! 266

JS知识点汇总(十七)--new操作符

JavaScript中new操作符和Object.create()的区别可以总结为:new操作符会执行构造函数,创建一个继承构造函数prototype的新对象,并保留构造函数属性;而Object.create()直接基于原型创建对象,会丢失原构造函数的属性。具体来说,new操作符做了四件事:创建新对象、连接原型链、绑定this、处理返回值;而Object.create()内部通过临时构造函数实现原型继承。两者主要区别在于是否执行构造函数和保留原属性,new适用于构造函数实例化,Object.create()

qq_42445025的博客 656

你不知道的 this 原理

大家好,我是十七,大家对 this 一定很熟悉吧, 那你知道为什么会有 this 机制嘛? 今天来说道说道~ var a = "a" var obj = { a : "obj.a", fn : function () { console.log(this.a) } } var newFn = obj.fn newFn() // a obj.fn() // obj.a 明明是同样的函数,为什么执行结果会不一样呢? 我想你会说 this 指向不一样, 那么

十七的博客 209
上一篇: JS(十六)继承模式,命名空间,对象枚举(下)
下一篇: JS(十八)数组
SteveTang957
博客等级 码龄9年 15粉丝 63原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值