ホームページ  >  記事  >  ウェブフロントエンド  >  JavaScript学習におけるクロージャとは何ですか? jsクロージャの紹介

JavaScript学習におけるクロージャとは何ですか? jsクロージャの紹介

青灯夜游
青灯夜游転載
2018-10-16 17:15:382349ブラウズ

この記事では、JavaScript におけるクロージャとは何なのかを説明します。 jsクロージャの紹介。困っている友人は参考にしていただければ幸いです。

#クロージャとは何ですか?

クロージャの正式な説明は次のとおりです: 多くの変数を持ち、これらをバインドする式変数が式の一部になるように、変数の環境の (通常は関数)。

クロージャの特徴:

1. 関数変数への参照として、関数が戻るときに、アクティブです。
2. クロージャは、関数が戻ったときにリソースを解放しないスタック領域です。

簡単に言うと、JavaScript では内部関数の使用が許可されています。つまり、関数定義と関数式は別の関数の関数本体に配置されます。

さらに、これらの内部関数は、それらが配置されている外部関数で宣言されているすべてのローカル変数、パラメーター、およびその他の内部関数にアクセスできます。

これらの内部関数の 1 つが、それらを含む外部関数の外側で呼び出されるときに、クロージャが形成されます。

#クロージャは、他の関数のスコープ内の変数にアクセスできる関数です。

関数には別の関数が含まれており、内部関数は外部関数の変数またはパラメーターを使用します。

クロージャを使用すると、ローカル変数やパラメータがリサイクルされるのを防ぎ、長期間使用できるようになります。

<!DOCTYPE html>
<html>

	<head>
		<meta charset="UTF-8">
		<title>Insert title here</title>
	</head>
	<script type="text/javascript" src="../js/vue.js"></script>

	<body></body>
	<script type="text/javascript">
		//平常创建的方式
		//一个函数包含另一个函数,内部函数使用外部函数的变量或者参数。
		function myFunction() {
			var x = 10;
			return function() {
				x++;
				alert(x);
			}
		}
		var a = myFunction();
		a(); //11    a(); //12    a(); //13
		//闭包可以使一个局部的变量或者参数不会被回收,以便我们长期的使用。
	</script>

</html>
要約: 以上がこの記事の全内容です。皆さんの学習に役立つことを願っています。関連チュートリアルの詳細については、

JavaScript ビデオ チュートリアル

jQuery ビデオ チュートリアル bootstrap チュートリアル をご覧ください。

以上がJavaScript学習におけるクロージャとは何ですか? jsクロージャの紹介の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。