Linux265
  • 首页
  • 资讯
  • 发行
  • 游戏
  • 软件
  • 教程
  • 书籍
  • 截图
  • 工具
  • 名站
  • 资源
  • 命令
  • VPS
如果您喜欢{Linux265},请告诉您身边的朋友,谢谢! 首页 > 教程 > JavaScript 教程 >js中的this
JavaScript 教程
js教程
js简介
js使用
js输出
js语句
js语法
js注释
js变量
js运算符
js算法
js赋值
js数据类型
js函数
js对象
js事件
js字符串
js字符串方法
js数值
js数值方法
js数组
js数组方法
js数组排序
js数组迭代
js日期
js日期格式
js日期获取
js日期设置
js数学运算
js随机数
js布尔运算符
js比较运算符
js条件语句
js条件判断Switch
js循环for语句
js循环while
js中Break和Continue
js类型转换
js位运算符
js正则表达式
js错误处理
js作用域
js变量提升
js严格模式
js中的this
js中的let
js中的const
js箭头函数
js类
js如何调试
js代码规范
js最佳实践
js常见错误
js优化性能
js保留关键字
js版本
js ES5介绍
js ES6介绍
js中JSON
JS 表单
js表单验证
js Form验证 API
JS 对象
js对象定义
js对象属性
js对象方法
js对象构造
js对象访问
js对象继承
js对象输出
js ES5对象方法
JS 函数
js函数定义
js函数参数
js函数调用
js调用函数 - call
js调用函数 - apply
js函数闭包
JS 类库
js类
js类继承
js静态方法
JS 异步
js回调
js异步
js promise
js async/await
JS HTML DOM
DOM 简介
DOM 方法
DOM 文档
DOM 元素
DOM HTML
DOM CSS
DOM 动画
DOM 事件
DOM 事件监听
DOM 导航
DOM 节点
DOM 集合
DOM 节点列表
JS 浏览器 BOM
js Window
js Screen
js Location
js History
js Navigator
js 弹出框
js Timing
js Cookies
JS AJAX
AJAX 简介
AJAX XMLHttp
AJAX 请求
AJAX 响应
AJAX XML
AJAX PHP
AJAX 数据库
AJAX 应用程序
AJAX 实例
JS JSON
JSON 简介
JSON 语法
JSON 与 XML
JSON 数据类型
JSON 解析
JSON 对象
JSON 数组
JSON PHP
JSON HTML
JSONP 方法
JS Web APIs
Web API - 简介
Web History API
Web Storage API
Web Geolocation API
JS vs jQuery
jQuery 选择器
jQuery HTML
jQuery CSS
jQuery DOM
JS 实例
JS 参考手册

js中的this

js严格模式 js中的let

实例

var person = {
      firstName: "John",
    lastName : "Doe",
      id       : 5566,
      fullName : function() {
        return this.firstName + " " + this.lastName;
      }
  };

亲自试一试 »

this 是什么?

JavaScript this 关键词指的是它所属的对象。

它拥有不同的值,具体取决于它的使用位置:

  • 在方法中,this 指的是所有者对象。
  • 单独的情况下,this 指的是全局对象。
  • 在函数中,this 指的是全局对象。
  • 在函数中,严格模式下,this 是 undefined。
  • 在事件中,this 指的是接收事件的元素。
  • 像 call() 和 apply() 这样的方法可以将 this 引用到任何对象。

方法中的 this

在对象方法中,this 指的是此方法的"拥有者"。

在本页最上面的例子中,this 指的是 person 对象。

person 对象是 fullName 方法的拥有者。

fullName : function() {
      return this.firstName + " " + this.lastName;
}

亲自试一试 »

单独的 this

在单独使用时,拥有者是全局对象,因此 this 指的是全局对象。

在浏览器窗口中,全局对象是 [object Window]:

实例

var x = this;
亲自试一试 »

在严格模式中,如果单独使用,那么 this 指的是全局对象 [object Window]:

实例

"use strict";
var x = this;

亲自试一试 »

函数中的 this(默认)

在 JavaScript 函数中,函数的拥有者默认绑定 this。

因此,在函数中,this 指的是全局对象 [object Window]。

实例

function myFunction() {
      return this;
  }

亲自试一试 »

函数中的 this(严格模式)

JavaScript 严格模式不允许默认绑定。

因此,在函数中使用时,在严格模式下,this 是未定义的(undefined)。

实例

"use strict";
function myFunction() {
      return this;
  }

亲自试一试 »

事件处理程序中的 this

在 HTML 事件处理程序中,this 指的是接收此事件的 HTML 元素:

实例

<button onclick="this.style.display='none'">
  Click to     Remove Me!
</button>

亲自试一试 »

对象方法绑定

在此例中,this 是 person 对象(person 对象是该函数的"拥有者"):

实例

var person = {
      firstName  : "John",
      lastName   : "Doe",
      id         : 5566,
      myFunction : function() {
      return this;
  }
  };

亲自试一试 »

实例

var person = {
      firstName: "John",
      lastName : "Doe",
      id       : 5566,
      fullName : function() {
      return this.firstName + " " +   this.lastName;
  }
  };

亲自试一试 »

换句话说,this.firstName 意味着 this(person)对象的 firstName 属性。

显式函数绑定

call() 和 apply() 方法是预定义的 JavaScript 方法。

它们都可以用于将另一个对象作为参数调用对象方法。

您可以在本教程后面阅读有关 call() 和 apply() 的更多内容。

在下面的例子中,当使用 person2 作为参数调用 person1.fullName 时,this 将引用 person2,即使它是 person1 的方法:

实例

var person1 = {
      fullName: function() {
        return this.firstName + " " + this.lastName;
      }
}
  var person2 = {
      firstName:"John",
      lastName: "Doe",
  }
  person1.fullName.call(person2);  // 将返回 "John Doe"

亲自试一试 »

js严格模式 js中的let
分类导航
Deno 教程
JavaScript 教程
jQuery 教程
AD

站点信息

意见反馈

免责声明

关于本站

联系站长

站点导航

综合资讯

发行版

游   戏

软   件

教   程

书   籍

截   图

工   具

名   站

免费资源

Linux265资源分享网,简称Linux265,是一个致力于分享Linux相关资讯,推广Linux发行版,分享Linux游戏,分享Linux各种优秀实用软件,分享Linux相关教程的资源分享站。本站建立的宗旨是通过分享,让更多的人了解Linux,学习Linux,使用Linux,喜欢Linux。

关注本站: 欢迎投稿

关注公众号:

Copyright@2017-2018 Linux265. 豫ICP备16021824号-1 Powered by Linux265资源分享网