/ / Създаване на асинхронна функция в JavaScript - javascript, recursion, функция-call

Създаване на асинхронна функция в JavaScript - javascript, recursion, функция-call

Възможно ли е да се обадя на функцията в javascript и да не чакам резултати? Имам много рекурсивни обаждания и те консумират много памет, така че понякога имам "Максимален размер на стака на повикванията надхвърлен".

Отговори:

2 за отговор № 1

Можеш да използваш

setTimeout( function(){ ..... }, 0  )

0 за отговор № 2

Това не е възможно и не е свързано с чакането на връщане на функцията. Проблемът, който имате, е, че наричате функция в дадена функция.

След като функция се нарича повиквателна функциясъстоянието се натиска върху стека. Ако след това се извика друга функция, тогава състоянието се натисне върху стека. Стакът трябва да расте. Трябва да погледнете вашия дизайн и дали рекурсията е подходяща за вашия проблем.

Ако не се нуждаете от резултата от дадена функция или трябва да изчакате да се върне, имате нужда от рекурсия.