Junior Frontend Developer Interview Questions

10,720 junior frontend developer interview questions shared by candidates

Task Runner with concurrent limit [Javascript] The problem was to complete the add function for Runner class. concurrent limit will determine the number of task Runner can run in parallel. If the concurrent limit is reached by Runner, rest of the tasked should be queued and only to be executed once the first set of task are completed. ------------------------------------------------------------- class Runner { constructor(concurrent) { } add(task) { // Add your code here. } } function task(x) { return function() { return new Promise((resolve, _) => { setTimeout(() => { console.log('task completed', x); resolve(); }, 2000); }) } } runner = new Runner(3); runner.add(task(2)) runner.add(task(2)) runner.add(task(2)) runner.add(task(4)) runner.add(task(4)) runner.add(task(4)) runner.add(task(6)) runner.add(task(6)) runner.add(task(6))
avatar

Senior Frontend Engineer

Interviewed at Miro

3.6
Jan 5, 2022

Task Runner with concurrent limit [Javascript] The problem was to complete the add function for Runner class. concurrent limit will determine the number of task Runner can run in parallel. If the concurrent limit is reached by Runner, rest of the tasked should be queued and only to be executed once the first set of task are completed. ------------------------------------------------------------- class Runner { constructor(concurrent) { } add(task) { // Add your code here. } } function task(x) { return function() { return new Promise((resolve, _) => { setTimeout(() => { console.log('task completed', x); resolve(); }, 2000); }) } } runner = new Runner(3); runner.add(task(2)) runner.add(task(2)) runner.add(task(2)) runner.add(task(4)) runner.add(task(4)) runner.add(task(4)) runner.add(task(6)) runner.add(task(6)) runner.add(task(6))

taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 6")); taskRunner.add(logAfterDelay("Delayed by 6")); taskRunner.add(logAfterDelay("Delayed by 6")); // --- Helpers --- const startingTime = Date.now(); function logAfterDelay(logString) { return () => { return new Promise((resolve, reject) => { setTimeout(() => { console.log(logString, getDelay(startingTime)); resolve(); }, 2000); }); }; } function getDelay(startingTime) { return [${Math.round((Date.now() - startingTime)/1000)}s delay]; }
avatar

Senior Frontend Engineer

Interviewed at Miro

3.6
Jan 25, 2022

taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 4")); taskRunner.add(logAfterDelay("Delayed by 6")); taskRunner.add(logAfterDelay("Delayed by 6")); taskRunner.add(logAfterDelay("Delayed by 6")); // --- Helpers --- const startingTime = Date.now(); function logAfterDelay(logString) { return () => { return new Promise((resolve, reject) => { setTimeout(() => { console.log(logString, getDelay(startingTime)); resolve(); }, 2000); }); }; } function getDelay(startingTime) { return [${Math.round((Date.now() - startingTime)/1000)}s delay]; }

Viewing 961 - 970 interview questions

Glassdoor has 10,720 interview questions and reports from Junior frontend developer interviews. Prepare for your interview. Get hired. Love your job.