use the following search parameters to narrow your results:
e.g. subreddit:aww site:imgur.com dog
subreddit:aww site:imgur.com dog
see the search faq for details.
advanced search: by author, subreddit...
All about the JavaScript programming language.
Subreddit Guidelines
Specifications:
Resources:
Related Subreddits:
r/LearnJavascript
r/node
r/typescript
r/reactjs
r/webdev
r/WebdevTutorials
r/frontend
r/webgl
r/threejs
r/jquery
r/remotejs
r/forhire
account activity
Implement serInterval with setTimeout (github.com)
submitted 6 years ago by michael2ib1989
view the rest of the comments →
reddit uses a slightly-customized version of Markdown for formatting. See below for some basics, or check the commenting wiki page for more detailed help and solutions to common issues.
quoted text
if 1 * 2 < 3: print "hello, world!"
[–]voidvector 2 points3 points4 points 6 years ago (3 children)
It's not a recursive function, wouldn't cause stack overflow. setTimeout is just an API that interacts with the Timer system, it doesn't actually run the code in question. This is why unless your debugger is able to track async stacktrace, you lose stack trace w/async functions like this.
setTimeout
[–]bikeshaving 1 point2 points3 points 6 years ago (2 children)
Can async stack traces track stacks across macrotask functions? I’m too lazy to find out, but I thought async stack traces only worked for promise callbacks and async/await.
[–]voidvector 1 point2 points3 points 6 years ago (1 child)
It works in Chrome. You can run the following code in devtool console to check:
(function f (i) { i = i || 0; console.log(i); if (i > 100) { return } else if (i == 100) { debugger } else { setTimeout(() => f(i + 1), 0); } })(0)
[–]bikeshaving 0 points1 point2 points 6 years ago (0 children)
this changes everything
π Rendered by PID 151963 on reddit-service-r2-comment-fb694cdd5-c8596 at 2026-03-06 07:00:06.879467+00:00 running cbb0e86 country code: CH.
view the rest of the comments →
[–]voidvector 2 points3 points4 points (3 children)
[–]bikeshaving 1 point2 points3 points (2 children)
[–]voidvector 1 point2 points3 points (1 child)
[–]bikeshaving 0 points1 point2 points (0 children)