Este artículo analiza el uso de esto en JS. Compártelo para su referencia. El análisis específico es el siguiente:
Ejemplo 1: El primer método para llamar a esto, llamado en el formulario de función. Representa la ventana de objeto global
Copie el código de la siguiente manera: <script type = "text/javaScript">
función t () {
alerta (esto); // Aquí esto representa un objeto de ventana.
}
t ();
</script>
Ejemplo 2: El segundo método para llamar a esto, llamado en forma de propiedades del objeto. Representa el objeto. OnClick es el atributo del objeto del elemento P en la instancia
Copie el código de la siguiente manera: <html>
<Evista>
<script type = "text/javaScript">
función t () {
alerta (esto);
this.style.background = 'verde';
}
window.onload = function () {
document.getElementById ('Eng'). onClick = t;
}
</script>
</ablo>
<Body>
<P id = "Eng"> ABCD </p>
</body>
</html>
Ejemplo 3: El tercer método para llamar a esto, llamado en forma de constructor.
Copie el código de la siguiente manera: <script type = "text/javaScript">
function dog () {
this.legs = 4;
this.Bark = function () {
alerta ("wangwang ...");
}
}
var wangcai = new dog (); // Cómo crear un objeto. nuevo nombre de función ();
wangcai.bark ();
</script>
ilustrar:
(1) Si la función Dog () se llama directamente en lugar de llamarla en la forma de crear un objeto, es equivalente al primer tipo de llamada, es decir, esto representa la ventana de objeto global.
(2) no hay un concepto de clase en JS, pero hay un concepto de objeto;
(3) La creación de objetos se puede crear usando var = objname {name: 'ABC', Age: 40}, o se puede crear a través de constructores;
(4) ¿Qué es un constructor? Cuando se llama a una función ordinaria en forma de "nuevo nombre de función ()", esta función actúa como un constructor.
Ejemplo 4: El cuarto método para llamar a esto: llamar y aplicar
Copie el código de la siguiente manera: <html>
<Evista>
<script type = "text/javaScript">
window.onload = function () {
var d = document.getElementById ('Hi');
if (hi.addeventListener) {// Chrome y Firefox
Hi.addeventListener ('Click', function () {alert (this.id)}, falso); // En el modelo W3C, esto apunta al objeto DOM. This.id el resultado es hola
} else {// es decir
Hi.attachevent ('onClick', function () {alert (this.id)}); // IE8 e IE8 a continuación, aquí esto apunta a la ventana del objeto global. El resultado no está definido
}
}
</script>
</ablo>
<Body>
<P id = "HI"> Hello World </p>
</body>
</html>
Espero que este artículo sea útil para la programación de JavaScript de todos.