this 指向问题

2020 年 10 月 21 日

admin
面试题

测试 this 指向问题

全局

var name = '小明'
function sayName() {
  var name = '小红'
  console.log(this.name)
}
sayName()

对象方法调用

var name = '小明'
var obj = {
  name: '小红',
  sayName: function() {
    console.log(this.name);
  }
}
obj.sayName();

var mySayName = obj.sayName
mySayName()

构造函数

function Person(name) {
  this.name = name;
  console.log(this);
}
var xiaohua = new Person('小花');

call

var name = '小明'

var obj = {
  name: '小红'
}

function sayName() {
  console.log(this.name)
}

sayName();

sayName.call(obj)

bind

var name = '小明'

var obj = {
  name: '小红',
  sayName: function() {
    console.log(this.name);
  }
}

var mySayName = obj.sayName.bind(this);

mySayName();
0 / 500

this 指向问题

2020 年 10 月 21 日

1

Like

0

Download

128

Viewed

技术是第一生产力