当前位置:首页 > 日记 > 正文

用javascript介绍回调控制过程

用javascript介绍回调控制过程
Javascript中无处不在的回调是过程控制的灾难,缺点是显而易见的:

1。如果没有显式返回,很容易产生多余的过程,以及产生的bug。

2。使代码无限嵌套,难以读取。

让我们谈谈如何避免上述问题。

第一个问题是习惯问题,当使用回调时,常常会让人忘记使用返回,在这种情况下,尤其是在使用咖啡脚本(虽然它将收集最终数据作为返回值时,但是返回值不一定代表您在编译的Javascript中的思想)。

复制代码代码如下所示:

a(错误,回调)>

回调()

log'you会看到我的控制台。

B = >

log'i是回调的控制台。

一个(错误,B)
在这种所谓的错误第一代码风格中,显然我们不想犯错误。方法A中的后续代码仍然被执行,但它不希望使用抛出来挂断整个进程。(死亡或优雅地死去),上面的代码会产生bug。

一个解决办法是诚实地对待…其他的…但我更倾向于做以下事情:

复制代码代码如下所示:

a(错误,回调)>

如果错误返回回调()

控制台。log'you不会看到我

B = >

log'i是回调的控制台。

一个(错误,B)
Javascript异步方法中的大多数返回值没有什么用处,所以这里返回作为进程控制角色使用,这比…其他的…更少的代码。

第二个问题是娘胎里带来的,很难根除。

一个好的方法是使用一些过程控制模块,使代码更有组织性。例如,如果是一个很好的模块,提供一系列的接口,包括迭代,循环,条件语句,甚至一个排队系统。下面的例子可以证明的优点和缺点两种写作。

复制代码代码如下所示:

#正常

第一=(回调)>

控制台。log'i是第一功能

()回调

第二=(回调)>

控制台。log'i是第二功能

()回调

第三=(- >)

控制台。log'i是第三功能

第一>

二>

第三()

#使用异步

async =需要('async)

async.waterfall {

第一,

二,

第三

(错误)- }。
作为明智的你,你会选择哪一个。

相关文章

图PS图象处理软件的全月蚀诗梦合成

图PS图象处理软件的全月蚀诗梦合成

图象,处理软件,全月,诗梦,电脑软件,本教程介绍图月全食朋友的诗梦PS图象处理软件合成的影响,合成的效果图教程是真的很漂亮,看起来非常逼真。推荐它,一起学习吧 本教程介绍图月全食朋友的诗梦PS图象处理软件合成的影响,本教程是很诗意的合成。…

PHP程序应该读这本书。

PHP程序应该读这本书。

这本书,程序,电脑软件,PHP,PHP在过去的几年里口碑很差,有很多关于它糟糕的设计和语法上的矛盾的讨论,但是主要的抱怨通常是安全的。许多PHP站点在几分钟内变黑了,即使是经验丰富、知识渊博的程序员也会说这种语言本身是不安全的。 我总是反对…

2015快乐人格签名

2015快乐人格签名

人格,快乐,电脑软件,我不想错过你生命中的每一寸。 我是你得不到的人。 愿一个人爱你至永生。 世界上总有一个人陪你到老。 所有的生物都不如你笑得好。 我愿意为你倾诉疯狂的心。 事实上,爱并不重要,无论你多么重要。 我们会一起死去。 只要…

Javascript函数参数使用指定参数名称值的

Javascript函数参数使用指定参数名称值的

函数参数,方法,参数,名称,电脑软件,本文介绍了将Javascript函数参数分配给参数名的方法,供大家参考,具体分析如下: 事实上,当参数传递给函数时,您可以使用参数名、参数值,这样就不会出错,但是下面的代码是通过字典实现的,不像Python完整支持的方法那样。…

PS图象处理软件做了一个简单的万圣

PS图象处理软件做了一个简单的万圣

万圣节,图象,处理软件,火焰,简单,这里我们介绍了一种简单的制作火焰特征的方法,它是由图层样式制作的。我们只需要设置一些简单的参数来制作一个好的火字符。 这里我们介绍了一种简单的制作火焰特征的方法,它是由图层样式制作的。我们只需要…

php获取视频预览的简易方法

php获取视频预览的简易方法

方法,简易,视频,电脑软件,php,本文介绍了PHP获取简单视频预览的一种简单方法,供大家参考,具体实现方法如下: 复制代码代码如下: converttoflv(一些AVI 视频输入。 功能converttoflv($美元输入,输出){ 将输入转换为$ ; $命令=ffmpeg V 0 y我投入…

人工智能绘制女性肖像的全过程

人工智能绘制女性肖像的全过程

绘制,人工智能,肖像,全过程,女性,本教程将向您介绍使用AI绘制女性肖像的方法。引言非常清楚,详细描述了肖像的方法和步骤。建议像你这样的朋友来学习。我希望你能喜欢这个教程。 本教程是朋友介绍ai绘制女性肖像的过程。教程很清楚。作者是…

JS中使用拆分和替换的例子

JS中使用拆分和替换的例子

拆分,替换,例子,电脑软件,JS,这篇文章说明了JS中的拆分和替换的用法,供大家参考,具体分析如下: 1。分裂: 复制代码代码如下所示: 员工继续进入登记表打印标志sdfsd sdfsd var str =1231sdfsd ; 警报(STR); 因此,str.split VaR(); 警报(因此{ 1 }); …

PHP按排序()函数排列数组的方法

PHP按排序()函数排列数组的方法

排序,函数,数组,排列,方法,本文介绍了用排序函数的PHP()函数对数组进行排序的方法,供大家参考,具体分析如下: 排序()函数用于将数组作为新键的数组单元的函数排序。原始的密钥名将被删除。 如果成功,返回true或返回false。 $ =数组() 排序(alpha); fo…

PS制作精美的水墨画海报

PS制作精美的水墨画海报

水墨画,海报,精美,电脑软件,PS,本教程是向朋友介绍一个PS,使照片美丽的海报和风格海报。本教程制作的海报非常好。这个教程不是很难。推荐给你最喜欢的朋友。 本教程非常简单。主要介绍PS制作成水墨画和插画风格的海报。我希望能帮助我的朋…

AI是如何切割的人工拍摄照片的方法

AI是如何切割的人工拍摄照片的方法

方法,照片,电脑软件,AI,AI是如何切割图片的人工智能的功能非常强大。许多功能我不清楚。在这里,萧边只能教你一个简单的还原,并学会砍掉做其他的设计。现在让我们看看AI切割照片的方式。 ai是非常强大的,很多功能我都不知道,这个小编辑器只能教…

AI让Win8的效果图,飞片

AI让Win8的效果图,飞片

效果图,电脑软件,AI,本教程介绍给朋友,利用AI让Win8的效果图,是炸飞。这个教程的效果真的很好。它很有创意,难度也不大。推荐。让我们一起学习。 受到修改的win8lo,今天忙的智慧女神,想一下子效果(妈的,不只是复制下面的QQ)为大家带来爱的渲染过程…