JS this指针的理解
时间:2022-05-06
本文章向大家介绍JS this指针的理解,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
this是javascript的一个关键字,也是比较容易令人迷糊的一个概念
this的本质:当前对象的所有者
示例1
var x = 1;
function test() {
alert(this.x);
}
test();
在之前的“JS执行顺序”文章中讲过,这个test函数会被先编译为一个全局变量,如
var test = function test() {
alert(this.x);
};
所以这个this所属对象为全局对象,this.x 就是全局变量 x,alert弹出值为'1'
示例2
var x = 2;
function test() {
alert(this.x);
}
var obj = {};
obj.x = 1;
obj.func = test;
o.func();
这个输出结果为'1',因为这里test被赋给了对象obj,this的所有者就是obj,this.x 也就是 obj.x
示例3
下面这个例子比较有迷惑性,是一个比较容易出错的情况
function test() {
alert(this.title);
}
<input type="button" value="test" onclick="test()" title="i am button"/>
输出的结果:undefined
其实onclick="test()",相当于
function onclick(event){
test();
}
是一个全局的function,上面的 test方法也是全局的function,而全局变量中并没有定义 title,所以结果为 undefined
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法