From c40612041809fe289aba58aefa170bbe784aba1f Mon Sep 17 00:00:00 2001 From: t7yang Date: Mon, 10 Jan 2022 08:38:07 +0800 Subject: remove name attribute for zh-CN --- files/zh-cn/web/javascript/closures/index.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'files/zh-cn/web/javascript/closures') diff --git a/files/zh-cn/web/javascript/closures/index.html b/files/zh-cn/web/javascript/closures/index.html index a3412be7ca..51bba7532c 100644 --- a/files/zh-cn/web/javascript/closures/index.html +++ b/files/zh-cn/web/javascript/closures/index.html @@ -73,7 +73,7 @@ console.log(add10(2)); // 12

add5add10 都是闭包。它们共享相同的函数定义,但是保存了不同的词法环境。在 add5 的环境中,x 为 5。而在 add10 中,x 则为 10。

-

实用的闭包

+

实用的闭包

闭包很有用,因为它允许将函数与其所操作的某些数据(环境)关联起来。这显然类似于面向对象编程。在面向对象编程中,对象允许我们将某些数据(对象的属性)与一个或者多个方法相关联。

@@ -126,7 +126,7 @@ document.getElementById('size-16').onclick = size16;

{{JSFiddleEmbed("https://jsfiddle.net/cubr4hs0/","","200")}}

-

用闭包模拟私有方法

+

用闭包模拟私有方法

编程语言中,比如 Java,是支持将方法声明为私有的,即它们只能被同一个类中的其它方法所调用。

@@ -207,7 +207,7 @@ console.log(Counter2.value()); /* logs 0 */

以这种方式使用闭包,提供了许多与面向对象编程相关的好处 —— 特别是数据隐藏和封装。

-

在循环中创建闭包:一个常见错误

+

在循环中创建闭包:一个常见错误

在 ECMAScript 2015 引入 let 关键字 之前,在循环中有一个常见的闭包创建问题。参考下面的示例:

@@ -351,7 +351,7 @@ function setupHelp() { setupHelp(); -

性能考量

+

性能考量

如果不是某些特定任务需要使用闭包,在其它函数中创建函数是不明智的,因为闭包在处理速度和内存消耗方面对脚本性能具有负面影响。

-- cgit v1.2.3-54-g00ecf