JavaScript系列从入门到精通系列第十九篇:JavaScript中的this关键字

news2024/10/6 1:46:14

文章目录

前言

一:什么是this

二:this的灵活妙用 


前言

function fun(a,b){
    console.log(a + b);
}

fun(1,2);

        我们通过形参的形式往参数中添加了参数。浏览器也会默默的给我们传递一个参数过去,这个参数被称为this。传递的节点就是在调用函数的时候。而且,每次都会传。 

一:什么是this

        传递过去的this对象就是全局的window对象。他是调用方法的时候,浏览器给传递过去的,这个是一个上下文对象。

        当然这个上下文对象不会一直是window对象的,根据函数的调用方式不同,我们this对象指向不同的对象。

function fun(){
    console.log(this);
}

fun();

var obj = {

    name:"孙悟空",
    sayName:fun
};

obj.sayName();//[object Object]

fun();//[object window]

        使用fun()函数的方式调用时,this永远是window。(本质上这属于window.fun())

        基于方法的形式调用时,this永远是这个方法所在的对象。

        this这个变量指向的对象是会变的,根据调用方式的不同,this只想的具体的对象也不同。

var name = '全局';
function fun(){

    console.log(this.name);
}


var obj = {

        name :"孙悟空",
        sayName:fun
};

var obj2 = {

        name :"沙和尚",
        sayName:fun
};


fun();
obj.sayName();
obj2.sayName();

二:this的灵活妙用 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1067232.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

1984-2020年世界各国和地区ICRG政治经济金融风险指标数据

1984-2020年世界各国和地区ICRG政治经济金融风险指标数据 1、时间:1984-2020年、 2、指标: 主要包括政治风险、经济风险、金融风险,以及各个分指标数据, 具体指标: id、Country、year、Bureaucracy Quality (L)、…

Goby 漏洞发布|深信服下一代防火墙 loadfile.php 文件读取漏洞

漏洞名称:深信服下一代防火墙 loadfile.php 文件读取漏洞 English Name: Sangfor Next Generation Firewall loadfile.php file reading vulnerability CVSS core:7.5 影响资产数:281045 漏洞描述: 深信服下一代防火墙是一款…

由于找不到msvcp120.dll 无法继续执行怎么解决(最新方法分享)

在使用电脑的过程中,我们可能会遇到一些问题,比如丢失 msvcp120.dll 文件。这种情况会导致电脑运行出现问题,甚至无法正常启动。本文将详细介绍 msvcp120.dll 文件丢失对电脑的影响以及 msvcp120.dll 丢失的原因,并提供四种解决方…

jwt的基本介绍

说出我的悲惨故事给大家乐呵乐呵:公司刚来了一个实习生,老板让他写几个接口给我,我页面还没画完呢。他就把接口给我了,我敲开心,第一次见这么高效率的后端。但我很快就笑不出来了。他似乎不知道HTTP通信是无状态的。他…

Glide源码分析

一,Glide一次完整的加载流程 下面的流程图是一次完整的使用Glide加载图片流程,时序图 二,Glide重要的类图 三,Glide加载图片 流程图

C语言数据结构 1.1 初学数据结构

数据结构的基本概念 数据结构在学什么? 如何用程序代码把现实世界的问题信息化 如何用计算机高效处理信息从而创造价值 数据: 数据元素、数据项: 数据元素——描述一个个体 数据对象——数据元素之间具有同样的性质 同一个数据对象里的数…

3. 无重复字符的最长子串(枚举+滑动窗口)

目录 一、题目 二、代码 一、题目 力扣&#xff08;LeetCode&#xff09;官网 - 全球极客挚爱的技术成长平台 二、代码 class Solution { public:int lengthOfLongestSubstring(string s) {int _MaxLength 0;int left 0, right 0;vector<int>hash(128, 0);//ASCII…

【iOS】——仿写计算器

文章目录 一、实现思路二、实现方法三、判错处理 一、实现思路 先搭建好MVC框架&#xff0c;接着在各个模块中实现各自的任务。首先要创建好UI界面&#xff0c;接着根据UI界面的元素来与数据进行互动&#xff0c;其中创建UI界面需要用到Masonry布局。 二、实现方法 在calcu…

糖基转移酶特异性 -bg

糖基转移酶特异性 大多数糖基转移酶对其供体和受体底物都具有高度的特异性&#xff0c;这导致Saul Roseman及其同事提出了“一种酶 - 一种连接”假说。人B血型α1-3半乳糖基转移酶就是这一概念的例证。该酶催化糖基化反应&#xff0c;其中半乳糖以α键添加到受体底物上半乳糖残…

[0xGame 2023] week1

整理一下&#xff0c;昨天该第二周了。今天应该9点结束提交&#xff0c;等我写完就到了。 PWN 找不到且不对劲的flag 第1题是个nc测试&#xff0c;但也不完全是&#xff0c;因为flag在隐含目录里 高端的syscall 程序使用了危险函数&#xff0c;并且没有canary阻止&#xff0…

后端解决跨域(极速版)

header(Access-Control-Allow-Origin: *); header(Access-Control-Allow-Methods:*); 代表接收全部的请求&#xff0c;"POST,GET"//允许访问的方式 指定域&#xff0c;如http://172.20.0.206//宝塔的域名&#xff0c;注意不是&#xff1a;http://wang.jingyi.icu等…

文件上传笔记

一、上传的简单绕过&#xff1a; 1、若是上传的文件只在前端的代码中进行了过滤&#xff1a; &#xff08;1&#xff09;可以直接在开发者工具中删除相关代码&#xff1a; &#xff08;2&#xff09;也可以通过 burpsuite 绕过: 上传时&#xff0c;先提前修改 php 文件的后缀…

QT之可自由折叠和展开的布局

介绍和功能分析 主要是实现控件的折叠和展开&#xff0c;类似抽屉控件&#xff0c;目前Qt自带的控件QToolBox具有这个功能&#xff0c;但是一次只能展开一个&#xff0c;所以针对自己的需求可以自己写一个类似的功能&#xff0c;这里实现的方法比较多&#xff0c;其实原理也比较…

upload文件上传

参数格式 <el-upload :http-request"upload" class"upload" :show-file-list"false" :on-success"handleUploadSuccess"><el-button size"default" type"primary" style"margin:0 20px;">上…

分类预测 | MATLAB实现POA-CNN鹈鹕算法优化卷积神经网络多特征分类预测

分类预测 | MATLAB实现POA-CNN鹈鹕算法优化卷积神经网络多特征分类预测 目录 分类预测 | MATLAB实现POA-CNN鹈鹕算法优化卷积神经网络多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现POA-CNN鹈鹕算法优化卷积神经网络多特征分类预测&#xff0…

深入解读redis的zset和跳表【源码分析】

1.基本指令 部分指令&#xff0c;涉及到第4章的api&#xff0c;没有具体看实现&#xff0c;但是逻辑应该差不多。 zadd <key><score1><value1><score2><value2>... 将一个或多个member元素及其score值加入到有序集key当中。根据zslInsert zran…

02.Cesium源码编译及搭建开发环境

开始之前&#xff0c;默认你已经掌握了一定的前端知识&#xff0c;文章中用到的一些前端知识不再展开解释&#xff0c;如果你有不明白的地方&#xff0c;请自行学习。 另外&#xff0c;本篇文章及后续的文章首先会使用原生JS的方式 进行实例的开发&#xff0c;Vue版本会在后期文…

办公技巧:Excel日常高频使用技巧

目录 1. 快速求和&#xff1f;用 “Alt ” 2. 快速选定不连续的单元格 3. 改变数字格式 4. 一键展现所有公式 “CTRL ” 5. 双击实现快速应用函数 6. 快速增加或删除一列 7. 快速调整列宽 8. 双击格式刷 9. 在不同的工作表之间快速切换 10. 用F4锁定单元格 1. 快速求…

快速掌握批量合并视频

在日常的工作和生活中&#xff0c;我们经常需要对视频进行编辑和处理&#xff0c;而合并视频、添加文案和音频是其中常见的操作。如何快速而简便地完成这些任务呢&#xff1f;今天我们介绍一款强大的视频编辑软件——“固乔智剪软件”&#xff0c;它可以帮助我们轻松实现批量合…

ACE综述

1、ACE综述 ACE自适配通信环境&#xff08;ADAPTIVE Communication Environment&#xff09;是可自由使用、开放源码的面向对象&#xff08;OO&#xff09;框架&#xff08;framework&#xff09;&#xff0c;它实现了许多用于并发通信软件的核心模式。ACE提供了一组丰…