JavaScript中的this指针是指向当前执行上下文的对象,它的值是在函数执行时动态确定的。
一般情况下,this关键字代表当前对象。JavaScript中的this关键字有多种用法,下面我们就来详细解释一下。
1.在全局函数中this指向全局对象:
console.log(this); // 输出全局对象window
2.在函数中this指向该函数的调用者:
function getName() {console.log(this.name);}window.name = 'global name';var obj = {name: 'object name',getName: getName};obj.getName(); // 输出object namevar anotherObj = {name: 'another object'};anotherObj.getName = obj.getName;anotherObj.getName(); // 输出another object3.当函数作为对象的方法调用时,this指向该调用方法的对象:
var person = {name: 'Jhon',sayName: function() {console.log(this.name);}};person.sayName(); // 输出Jhon4.当函数作为构造函数调用时,this指向新创建的对象:
function Person(name, age) {this.name = name;this.age = age;this.sayName = function() {console.log(this.name);}}var person1 = new Person('Alice', 18);console.log(person1.name); // 输出Aliceperson1.sayName(); // 输出Alice5.当函数使用apply或call方法时,this指向该方法的第一个参数:
function sayName(age) {console.log(this.name, age);}var person = {name: 'Jhon'};sayName.call(person, 20); // 输出Jhon 20sayName.apply(person, [20]); // 输出Jhon 20总的来说,JavaScript中的this指针非常重要,它的值在函数执行时动态确定,可以根据需要指向不同的对象。因此,在编写JavaScript代码时,我们要注意理解和掌握this关键字的使用方法,确保代码的正确性。
上一篇:javascript中关闭窗口
下一篇:JavaScript中做导航









