0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

javascript的this指向

科技绿洲 来源:网络整理 作者:网络整理 2023-11-16 10:38 次阅读

JavaScript中,this关键字指向当前执行上下文的对象。它通常在对象方法中使用,表示该方法所属的对象。

在函数中使用this,它的值取决于函数是如何被调用的。有以下几种情况:

  1. 普通函数调用:在普通函数中,this指向全局对象(在浏览器中是window)。
function func() {
  console.log(this); // 输出全局对象
}
func();
  1. 方法调用:在对象的方法中使用this,它指向调用该方法的对象。
var obj = {
  name: 'John',
  sayHello: function() {
    console.log('Hello, ' + this.name); // 输出 Hello, John
  }
};
obj.sayHello();
  1. 构造函数调用:在构造函数中,this指向新创建的对象实例。
function Person(name) {
  this.name = name;
  this.age = 0;
}
Person.prototype.sayHello = function() {
  console.log('Hello, ' + this.name); // 输出 Hello, John
};
var john = new Person('John');
john.sayHello();
  1. 箭头函数:箭头函数不绑定自己的this值,它继承自父执行上下文。这意味着箭头函数中的this值取决于它被定义时的上下文,而不是它被调用时的上下文。例如:
var obj = {
  name: 'John',
  sayHello: () = > {
    console.log('Hello, ' + this.name); // 输出 undefined
  }
};
obj.sayHello();

在这个例子中,箭头函数没有自己的this值,所以它继承了父执行上下文的this值,即obj对象。因此,在箭头函数中使用this,它指向的是obj对象,而不是箭头函数本身。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 浏览器
    +关注

    关注

    1

    文章

    1015

    浏览量

    35269
  • 函数
    +关注

    关注

    3

    文章

    4304

    浏览量

    62417
  • javascript
    +关注

    关注

    0

    文章

    516

    浏览量

    53787
  • this
    +关注

    关注

    0

    文章

    5

    浏览量

    3254
收藏 人收藏

    评论

    相关推荐

    JavaScript教程

    JavaScript教程:JavaScript是由Netscape公司开发并随Navigator导航者一起发布的、介于Java与HTML之间、基于对象事件驱动的编程语言,正日益受到全球的关注。因它
    发表于 10-21 09:17

    JavaScript无处不在

    几年前,我从来没有想过现在的JavaScript竟然会变得几乎无处不在。下面是几个要关注JavaScript的原因。首先,我认为JavaScript能够得到普及的主要原因之一是,JavaScr
    发表于 01-10 16:54

    JavaScript中的Object

    1. 对象的定义?向对象的语?都有一个标志,即类。定义:对象是 JavaScript 的一个基本数据类型,是?种复合值,它将很多值(原始值或者其他对象)聚合在一起,可通过名字访问这些值。即属性的无序
    发表于 09-18 09:05

    JavaScript中的this是什么?

    this 是什么?this 是 JavaScript 中的?个关键字,MDN 这样解释:this 是指当前执行代码的环境对象。根据语义,我这里把它理解为 ”引用指针“ 。this 的?法?在大树云
    发表于 09-18 09:05

    JavaScript 简介

    ## JavaScript 简介 [点击这里学习更多JavaScript知识 ],或搜索 jsrunJavaScript 是世界上最流行的编程语言。这门语言可用于 HTML 和 web,更可广泛用于
    发表于 09-09 17:30

    JavaScript源码大全(CHM)

    JavaScript源码大全: 简介:本软件为Javascript共享教学软件,包含各种Javascript源码及演示,力求丰富易懂。
    发表于 12-08 10:30 0次下载
    <b class='flag-5'>JavaScript</b>源码大全(CHM)

    可视化的javascript开发工具

    Netscape Visual JavaScript Netscape出品可视化的javascript开发工具。 同时可以下载Visual javascript Component Developers Kit和
    发表于 03-31 14:34 13次下载

    JavaScript语言基础

    JavaScript关键字(Reserved Words)是指在JavaScript语言中有特定含义,成为JavaScript语法中一部分的那些字。JavaScript关键字是不能作为
    发表于 04-03 16:58 8次下载

    JavaScript JavaScript是什么语言

    JavaScript是属于开发Web页面的脚本编程语言,是一种具有函数优先的轻量级编程语言。JavaScript基于原型编程、多范式的动态脚本语言,并且支持面向语言、命令式、声明式、函数式编程范式。
    的头像 发表于 07-27 15:41 6604次阅读

    javascript怎么开启

    在浏览器中启用 JavaScript 的方法如下: 在浏览器中启用 JavaScript 对于大多数浏览器,您可以在浏览器的设置或选项中启用 JavaScript。以下是一些常见浏览器的启用步骤
    的头像 发表于 11-16 10:16 1837次阅读

    javascript有什么用

    JavaScript是一种广泛使用的编程语言,主要用于增强网页和创建动态网页内容。以下是JavaScript的一些主要用途: 交互性:JavaScript可以使网页具有交互性。例如,当用户点击按钮或
    的头像 发表于 11-16 10:19 935次阅读

    javascript可以关闭吗

    **JavaScript是一种编程语言,它不能被“关闭”。**JavaScript是一种客户端脚本语言,它通常嵌入在HTML页面中。当用户访问一个包含JavaScript的网页时,浏览器会执行这些
    的头像 发表于 11-16 10:20 1437次阅读

    javascript:;怎么解决

    javascript:” 是一个JavaScript伪协议,它通常出现在URL地址栏或链接中,用于执行JavaScript代码。然而,有时它可能会导致一些问题,特别是在一些不支持
    的头像 发表于 11-26 14:39 7238次阅读

    JavaScript的用途和功能

    JavaScript是一种广泛使用的脚本语言,用于为网站添加动态功能和交互性。从创建简单的交互式表单到设计复杂的网页游戏,JavaScript为开发者提供了丰富的功能和灵活的创作能力。它在现代的网页
    的头像 发表于 12-03 11:12 839次阅读

    javascript属于前端吗

    JavaScript是一种高级编程语言,通常用于网页开发。它是一种脚本语言,可用于在网页上动态交互,提供更好的用户体验。JavaScript是一种广泛使用的技术,几乎所有现代网页都使用它来实现交互性
    的头像 发表于 12-03 11:43 1375次阅读