我一直主要使用Python進行編程。今年,我學會了如何使用它進行遞歸。在JavaScript中處理遞歸的最佳方法是什麼?
一個非常好的技術,我的教授教我的方法是使用列表理解像這樣:
def list_all(obj):
if not isinstance(obj, list):
return [obj]
else:
return sum([list_all(x) for x in obj], [])
現在,我越來越多的使用JS,而不是Python的,我想知道什麼是特定的內置功能你可以用語言來幫助遞歸。我知道列表理解在JavaScript中被棄用,所以顯然我不能再使用它們了。在處理遞歸時,映射或過濾可以成爲列表理解的好替身嗎?如果不是,那麼什麼?
*「我知道列表理解在JavaScript中被棄用」* - 誰告訴你的?我們什麼時候有過列表解析,爲什麼他們會被棄用? – Li357
@AndrewLi:'[for(x [1,2,3])x * x]' - 在你的Firefox控制檯中試試這個;) – georg
@georg我明白未來的ES版本正在實現列表解析,但它們不是標準化。問題在於OP聲稱他們之前已經將其作爲標準存在,並已被棄用,這是不正確的。 – Li357