car*_*sel 3 javascript procedural-programming
我最近观看了一个JavaScript视频教程,其中包含与此类似的代码:
(function (){
var b = 10,
c = 20,
d = 50;
var e = function(){
return b + c + d;
};
return e();
}());
Run Code Online (Sandbox Code Playgroud)
这是一种常见的JS编码模式.作者说这是Javascript代码中程序方法的一个例子.我不明白,你能解释一下吗?
让我们首先说上面是一个自我调用的匿名函数:
自动调用的匿名函数在您创建它时没有名称自动/立即运行,因此称为匿名.
以上是我认为的一个相当差的例子,但请考虑以下变化:
var f = (function (){
var b = 10,
c = 20,
d = 50;
var e = function(){
return b + c + d;
};
return e();
}());
?console.log(f);?
Run Code Online (Sandbox Code Playgroud)
我们已经采用了上面的代码并var f =在函数前添加了一个代码.这将返回e()内部函数的值,f现在您有一个值f可以在别处使用.自变量b,c,d,e声明函数范围内的匿名函数,我们可以确保他们不会被篡改.这是一种在JavaScript中执行私有变量的方法.现在说你10 + 20 + 50可能在你的代码中有位置.您可以在开头运行此匿名函数,并将这些事件替换为f.这种将代码抽象为各种过程的想法就是为什么它被称为程序编程.
程序编程使用结构化方法对程序进行编码,其中程序的功能被分解为许多函数或子例程,以使其更容易遵循并减少重复代码的需要.
这主要用于使代码更易于阅读,更易于跟踪/调试,并允许您将常用的代码块抽象为编写良好的代码片段.
这会让你进入闭包
| 归档时间: |
|
| 查看次数: |
4594 次 |
| 最近记录: |