Antes desta seta na função e a função deste ponto ES6 Comparativo

Um ponto em ES6 isto é encontrar o ponto mais próximo a esta camada exterior.
Quando este ponto não é alterado, uma seta nesta função, há dois casos

  1. 1 Neste ponto para o elemento a ser registrado
<script> 
    var btn=document.querySelector(button);
    btn.onclick=function(){
        console.log(this);//this 指向btn
    }
</script>
  1. janela 2Este ponto, em um sujeito, uma matriz sujeito, a função, a função das setas apontam para esta janela. Neste caso, a camada mais externa é uma função global
  // 1 对象中的箭头函数的this指向window
    var obj = {
        name: 'lxf',
        say: () => {
            console.log(this);
            console.log('对象中箭头函数中的this' + this);
        }
    }
     obj.say();


 // 2 函数中的箭头函数中的this指向window
    function fun() {
        let a = () => {
            console.log('函数中 箭头函数中的this:' + this);
        }
        a(); //调用箭头函数
    }
    fun();


// 3 数组对象中的 箭头函数中的this指向window
    var arr1 = [{
        name: 'age',
        say: () => {
            console.log('函数中的箭头函数中的this'+this);
        }
    }]
    arr1[0].say();

2 não muda esse ponto, a função convencional deste ponto, há dois casos

  1. Apontando instância de um objecto
// 创建对象时this的指向
 function Start(a, b, c) {
        this.uname = a;
        this.age = b;
        this.sex = c;
        this.say = function() {
            console.log(this); //此时的this指向实例对象,
        }
    }
    var ldh = new Start('ldh', 18, 'man');
    ldh.say(); //在此this指向ldh这个对象
  1. Apontando para o chamador
var obj = {
        uname: 'deng',
        age: 18,
        sex: 'man',
        say: function() {
            console.log(this);
        }
    }
    obj.say(); //this指向obj,是obj调用的。

<script> 
    var btn=document.querySelector(button);
    btn.onclick=function(){
        console.log(this);//this 指向btn
    }
</script>
Publicado 17 artigos originais · ganhou elogios 0 · Visualizações 428

Acho que você gosta

Origin blog.csdn.net/weixin_44805161/article/details/101220330
Recomendado
Clasificación