数码资讯
在Javascript中消除闭包的一般方法
Javascript的关闭是其主动开发的一个特点。这也是一种消极的发展特征。也就是说,JS有一个闭包可以更好地解决一些问题。另一方面,为了解决一些问题,JS不得不使用闭包来解决问题。 前者不在这里讨论,如果js闭包能更好的解决问题,当然闭包的使用也比较好。 我讨论后者,因为js本身是有限的,并且偶然
选购提示
关注价格、性能、续航、售后和真实使用场景,理性比较后再下单。
Javascript的关闭是其主动开发的一个特点。这也是一种消极的发展特征。也就是说,JS有一个闭包可以更好地解决一些问题。另一方面,为了解决一些问题,JS不得不使用闭包来解决问题。
前者不在这里讨论,如果js闭包能更好的解决问题,当然闭包的使用也比较好。
我讨论后者,因为js本身是有限的,并且偶然遇到了一个封闭的包来解决这个问题,比如变量只在这个需求中初始化一次。
常规语言就是这样解决的:
复制代码代码如下所示:
类{
函数init(){
这个,n=0;
}
函数(){
这个;
还这个;
}
}
var obj =新课();
Javascript通常解决这个问题(使用闭包):
复制代码代码如下所示:
var obj = { {
函数(){()
var = 0;
返回函数(){
氮+;
返回N;
}
})
}
但我最好推荐这种方法(消除闭包):
复制代码代码如下所示:
函数类(){
var =;
自我= 0;
self.func =函数(){
自我+ ++;
回归自我;
}
}
var obj =新课();
由于具有更好的可伸缩性。当你需要在一个变量上实现不同的操作时,后者只需要定义一个不同的函数(即简单的线性扩展),而A(Bi Bao)是一个完整的重写(这就是为什么你经常听到单词重构)。
前者不在这里讨论,如果js闭包能更好的解决问题,当然闭包的使用也比较好。
我讨论后者,因为js本身是有限的,并且偶然遇到了一个封闭的包来解决这个问题,比如变量只在这个需求中初始化一次。
常规语言就是这样解决的:
复制代码代码如下所示:
类{
函数init(){
这个,n=0;
}
函数(){
这个;
还这个;
}
}
var obj =新课();
Javascript通常解决这个问题(使用闭包):
复制代码代码如下所示:
var obj = { {
函数(){()
var = 0;
返回函数(){
氮+;
返回N;
}
})
}
但我最好推荐这种方法(消除闭包):
复制代码代码如下所示:
函数类(){
var =;
自我= 0;
self.func =函数(){
自我+ ++;
回归自我;
}
}
var obj =新课();
由于具有更好的可伸缩性。当你需要在一个变量上实现不同的操作时,后者只需要定义一个不同的函数(即简单的线性扩展),而A(Bi Bao)是一个完整的重写(这就是为什么你经常听到单词重构)。
声明:本文内容用于数码产品信息整理与选购参考,具体价格、库存、售后政策以官方渠道和电商页面实时信息为准。