当前位置: 首页 > 科技观察

2分钟编程提示:不要在代码中使用循环_0

时间:2023-03-17 13:13:32 科技观察

而不是编写for或while循环,您应该使用map、filter和reduce等函数。这是一个推荐的做法,因为:循环很容易产生代码副作用,而副作用会使代码逻辑变得杂乱无章。当您尝试一次做不止一件事时,循环会让您痛苦不堪。函数式编程可以防止代码产生像感冒药一样多的副作用。它迫使您一次只做一件事,并且比循环更具可读性。循环和指针一样,是一种简单的编程方法。它们非常适合一些关键代码,但我要说我们中很少有人会看显卡驱动程序。让我们切入正题——这是JavaScript程序的比较。首先,旧的循环版本:constcats=['Antonio','Squid','Tornado','Avocado','Barnacles','Abroteus'];conststringStartsWithA=x=>x[0].toLowerCase()==='a';constcatsWhoseNameStartsWithA=[];for(leti=0;ix[0].toLowerCase()==='a';constcatsWhoseNameStartsWithA=cats.filter(stringStartsWithA);console.log(catsWhoseNameStartsWithA);//Output://["Antonio","Avocado","Abroteus"]当然,这是一个简单的例子,很可能是过滤器的一个很好的用例。尽管如此,我们还是将5行混乱的代码变成了……0行?在第一个示例中,我们使用一行代码来声明数组。乐趣并没有就此结束:我们以过滤器为例,但还有更多用途,如映射、缩减、排序和展平。它们为我们提供了巨大的空间来编写富有创意、优雅且最重要的是可理解的代码!你怎么认为?也许我的例子有偏见,也许我完全错了。在评论中让我知道-我感谢所有反馈!