Heim Web-Frontend js-Tutorial 有关js的变量作用域和this指针的讨论_javascript技巧

有关js的变量作用域和this指针的讨论_javascript技巧

May 16, 2016 pm 06:13 PM
this指针 变量作用域

一、变量作用域:[P71]

这一句话说的非常精辟:“在ECMAScript中,只有两种执行环境,全局环境和函数环境,每个函数都是一个执行环境,包括嵌套函数。换句话说,其他情况下即使变量声明在一对大括号中,在括号外部仍然可以访问这些变量”。以下给出例子:
复制代码 代码如下:

for(var i=0; ivar num = 20; // 在for语句中声明的变量
}
alert(num); // 在for语句外部调用变量,仍然可以得到num的值

对异常语句也同样可以:
复制代码 代码如下:

try {
var num = 20; // 在try语句中声明的变量
a = b; // 引起一个异常
} catch(e) {
alert(num); // 在catch语句中调用变量,将得到20
} finally {
alert(num); // 在finally语句中调用变量,将得到20
}
alert(num); // 在try语句外部调用变量,将得到20

除了上面所演示的这两种语句外,一对大括号也无法构成一个执行环境,例如:
复制代码 代码如下:

{ var num = 1;3 }

二、this指针:[P83]

在这里列出this在ECMAScript中的不同含义:

(1) 在全局执行环境中使用this,表示Global对象,在浏览器中就是window对象。

(2) 当在函数执行环境中使用this时,情况就有些复杂了。如果函数没有明显的作为非window对象的属性,而只是定义了函数,不管这个函数是不是定义在另一个函数中,这个函数中的this仍然表示window对象。如果函数显示地作为一个非window对象的属性,那么函数中的this就代表这个对象。(当然可以使用apply或者call函数来取代默认this的引用,详见[P88])

(3) 当通过new运算符来调用函数时,函数被当做一个构造函数,this指向构造函数创建出来的对象。
参考:
《JavaScript基础与案例开发详解》清华大学出版社
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
2 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Repo: Wie man Teamkollegen wiederbelebt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Abenteuer: Wie man riesige Samen bekommt
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Wie wird der Variablenumfang einer PHP-Funktion bestimmt? Wie wird der Variablenumfang einer PHP-Funktion bestimmt? Apr 16, 2024 pm 04:51 PM

Der Variablenbereich in PHP ist in lokalen (innerhalb der Funktion), globalen (zugänglich innerhalb des Programms) und Klassenbereich (zugänglich innerhalb der Klasseninstanz) unterteilt. Das Schlüsselwort global kann lokale Variablen als globale Variablen deklarieren, und das Schlüsselwort static kann lokale Variablen als statische Variablen deklarieren und ihre Werte zwischen Funktionsaufrufen beibehalten.

Vertiefendes Verständnis des Golang-Funktionslebenszyklus und des Variablenumfangs Vertiefendes Verständnis des Golang-Funktionslebenszyklus und des Variablenumfangs Apr 19, 2024 am 11:42 AM

In Go umfasst der Funktionslebenszyklus Definition, Laden, Verknüpfen, Initialisieren, Aufrufen und Zurückgeben; der Variablenbereich ist in Funktionsebene und Blockebene unterteilt. Variablen innerhalb einer Funktion sind intern sichtbar, während Variablen innerhalb eines Blocks nur innerhalb des Blocks sichtbar sind .

Variabler Umfang und Lebenszyklus in der Go-Sprache Variabler Umfang und Lebenszyklus in der Go-Sprache Jun 01, 2023 pm 12:31 PM

Die Go-Sprache ist eine statisch typisierte Open-Source-Sprache. Sie zeichnet sich durch Einfachheit, Effizienz und Zuverlässigkeit aus und erfreut sich zunehmender Beliebtheit bei Entwicklern. In der Go-Sprache sind Variablen die grundlegendste Form der Datenspeicherung in Programmen. Der Umfang und der Lebenszyklus von Variablen sind für die Korrektheit und Effizienz des Programms sehr wichtig. Der Gültigkeitsbereich einer Variablen bezieht sich auf die Sichtbarkeit und Zugänglichkeit der Variablen, also darauf, wo auf die Variable zugegriffen werden kann. In der Go-Sprache ist der Variablenbereich in globale Variablen und lokale Variablen unterteilt. Globale Variablen sind außerhalb einer Funktion definierte Variablen und können überall im gesamten Programm verwendet werden

PHP 5.6-Variablenbereich: So definieren Sie statische Variablen mit dem Schlüsselwort static PHP 5.6-Variablenbereich: So definieren Sie statische Variablen mit dem Schlüsselwort static Jul 30, 2023 pm 11:02 PM

PHP5.6-Variablenbereich: So verwenden Sie das Schlüsselwort static zum Definieren statischer Variablen. In PHP bestimmt der Bereich einer Variablen die Sichtbarkeit und den Zugriffsbereich der Variablen. Eine statische Variable ist eine spezielle Art von Variable, deren Wert zwischen Funktionsaufrufen unverändert bleibt. In PHP5.6 und höher können Sie das Schlüsselwort static verwenden, um statische Variablen innerhalb von Funktionen und Klassenmethoden zu definieren. Die Merkmale statischer Variablen sind: Der Umfang statischer Variablen ist auf die Funktion oder Methode beschränkt, in der sie deklariert wird. Statische Variablen werden zwischen Funktions- oder Methodenaufrufen verwendet

Wie definiere ich den Variablenbereich in der Golang-Funktion? Wie definiere ich den Variablenbereich in der Golang-Funktion? Apr 11, 2024 pm 12:27 PM

In Go beschränkt der Funktionsbereich die Sichtbarkeit von Variablen auf die Funktion, in der die Variable deklariert ist: Variablen innerhalb einer Funktion deklarieren: varnametype=value Der Gültigkeitsbereich ist auf den deklarierten Codeblock beschränkt, und andere Funktionen oder verschachtelte Blöcke können nicht auf diese Variablen zugreifen.

So verwenden Sie Variablen in PHP So verwenden Sie Variablen in PHP May 20, 2023 pm 02:33 PM

PHP ist eine sehr beliebte Webentwicklungssprache, die es Entwicklern ermöglicht, dynamische Webanwendungen auf der Serverseite zu erstellen. In PHP ist eine Variable eine grundlegende Datenstruktur, die zum Speichern von Werten und Daten verwendet wird. In diesem Artikel wird die Verwendung von Variablen in PHP vorgestellt. Grundlegende Syntax von Variablen Die Syntax zum Deklarieren von Variablen in PHP ist sehr einfach. Variablennamen beginnen mit einem Dollarzeichen ($), gefolgt vom Variablennamen. Variablennamen können eine Kombination aus Buchstaben, Zahlen oder Unterstrichen sein, sie müssen jedoch mit einem Buchstaben oder einem Unterstrich beginnen. Der folgende Code deklariert beispielsweise einen Namen

Eine Erklärung des variablen Umfangs von Golang-Funktionen Eine Erklärung des variablen Umfangs von Golang-Funktionen May 18, 2023 am 10:30 AM

Golang ist eine sehr beliebte Programmiersprache, die in der Branche für ihre effiziente Parallelitätsleistung und ihren prägnanten Syntaxstil hoch gelobt wird. Als stark typisierte Sprache unterstützt Golang auch die Deklaration von Variablentypen und die Bereichskontrolle. In Golang ist der variable Umfang ein sehr wichtiges Konzept. Es bestimmt, wo auf eine Variable zugegriffen werden kann und wie lange sie in verschiedenen Bereichen gültig ist. In diesem Artikel wird Ihnen das relevante Wissen über den variablen Umfang von Golang-Funktionen erläutert. 1. Das Konzept des variablen Geltungsbereichs in Gol

Was ist der variable Umfang der Golang-Funktion? Was ist der variable Umfang der Golang-Funktion? Dec 22, 2023 pm 02:39 PM

Der Variablenumfang einer Golang-Funktion bezieht sich auf die Sichtbarkeit und den Lebenszyklus von Variablen innerhalb der Funktion. Je nach Position und Umfang der Variablen in der Funktion können Variablen in drei Typen unterteilt werden: lokale Variablen, Parametervariablen und Rückgabewertvariablen. Detaillierte Einführung: 1. Lokale Variablen sind innerhalb einer Funktion definierte Variablen und können nur innerhalb der Funktion verwendet werden, einschließlich aller Codeblöcke und verschachtelten Codeblöcke der Funktion Eingabeparameter, die von der Funktion empfangen werden und innerhalb der Funktion verwendet werden können. Ihr Geltungsbereich ist auf das Innere der Funktion usw. beschränkt.

See all articles