Javascript Interview Questions ( Debouncing and Throttling ) - Implementation, Examples etc
Vložit
- čas přidán 16. 06. 2024
- #JavascriptInterview #Javascript #FrontendInterview
Javascript Interview Questions on Debouncing and Throttling will be discussed in this video including its in Polyfills, Implementation, Examples etc.
➡️ Book an Interview Preparation call with me -
topmate.io/roadsidecoder
🟦 Follow me on Twitter and u will clear your interview 🤓 -
/ piyush_eon
⭐ Support the channel and learn from me One on One -
/ @roadsidecoder
🔗 Blog for the video -
roadsidecoder.hashnode.dev
🔗 Functions Interview Video -
• Javascript Interview Q...
🔗 Javascript Interview Series -
• Javascript Interview Q...
🔗 Cars24 Interview Experience -
• Frontend Interview Exp...
🔗 Unacademy Interview Experience -
• Frontend Interview Exp...
🔗 Tazorpay Interview Experience -
• Frontend Interview Exp...
🔗 MERN Stack Tutorial with Redux -
• MERN Stack Project Tut...
🔗 React Beginner's Project Tutorials -
• React JS Project Tutor...
-------------------------------------------------------------------------
00:00 Intro
00:20 Debouncing Example
01:25 Debouncing Visual Explaination
02:12 Throttling Example
02:53 Throttling Visual Explaination
04:49 Ques 1 - Button Press Debounce
09:54 Ques 2 - Button Press Throttle
12:26 Get Interview Preparation call with me
12:40 Ques 3 - Implement Debounce Polyfill
15:49 Ques 4 - Implement Throttle Polyfill
20:19 Important Action
-------------------------------------------------------------------------
Special Thanks to our members -
🔴 Get my Complete Frontend Interview Prep course - roadsidecoder.com/course-details
Are u a God??
Yes Odin
I only saw the throttle function implementation and it seems incorrect to me.
Because just think about it if we make two calls within the delay time, the first call will be invoked immediately and second function will be invoked after the delay.
In most of the videos, they don't explain the reason for adding a particular line of code in custom debounce/ throttle. Thank you for a detailed explanation. Really helps.
Cheers!
You are simply a gem. Thanks for the great explanation. Keep doing such good things
Awesome, great explanation and simple implementation in vanilla js.
Much needed info , thanks roadsidecoder 😊
I started my day n iPad thinking of watching RoadSide Coder vids, and got to see this video in first place.❤🎉
Haha, Awesome ❤️
Real life examples are best! you should teach it like this! it is best
thanks for making this video , your series is awesome...
As always awesome.Thank you.
Have been following your videos since last year. Helped me to switch last time. Here again for the next 😁
So good to hear this 💖
Very welcoming. Thank you.
Thanks Bhai ❤️, b'cz of you I could understand debouncing.
Very informative... Can you please make a video on prototype and protypical inheritance? Thanks in advance!
Wonderful explaination.
Great video bro, keep up the good work
loving it
Awesome bro
Best 🔥 content
you are just amazing:)
Thanks.
Thank you
Champ is back
Hi bro, love your content and the vibe of the video so wanna ask you a question that is is there a internship which is only for frontend developer and how can i apply for it. Looking for you reply
perfect video 🤩🤩👌
Thanks 😄
Please make more videos related to frontend
Sir please upload a Playlist on Nodejs interview questions
awesome
I have a question For throttle Pollyfill implementation we can use setInterval?
Nice video, I guess at the end of video there is glitch happens looks like throttling 😆
Good day
Road side coder>>>>> Namaste Javascript
both are best🙌🙌
9:27 in the debounce function why post increment doest work I mean triggeredcount++
👍
please more videos on javascript interviews
On the way
hi Piyush, any plans for a series on Front End System Design for interview preparation?
Soooon!
Throttle Polyfill , we can use the setinterval also i am right?
🙏👍
someone ask me but don't know A web developer is creating code using the JavaScript promise method. Consider the following JavaScript promise function syntax:
function makeAPromise (resolve, reject) {
resolve(1);
setTimeout(resolve, 2000, 2);
}
let promise = new Promise(makeAPromise); promise.then(alert);
What happens to resolve in the second call?
The output is 2.
The call is ignored.
The function will be called in 2 seconds.
The call is promised to run.
Does this polyfills work for any examples,??
🙏🙏🙏🙏 please reply
so every time we go inside mydebounce
Let Timer does get
reinitialize or holds the previous value ???
Or, js initialize timer only one time (1st time) after that how many time we write let timer it doesnot care . let timer ;
this concept is important i would write let timer on higher scope
Please clear this concept
No blog present for this video
Throttle with boolean variable
const myThrottle = (cb , delay) =>{
let shouldWait = false
return function (...args){
// already execution is started
if (shouldWait) return
cb(...args)
shouldWait = true
setTimeout(() => {
shouldWait = false
} , delay)
}
}
This code needs slight improvement, check web dev simplified 's video on throttling
Problem Statement: Weekday date range picker component
Create a date range picker component in React and TypeScript that allows users to select
weekdays (Monday through Friday) and prevents them from selecting weekends (Saturday and
Sunday). The component should include the following features:
● The component should allow users to select a date range defined by a start date and an
end date. Remember that a start date and an end date must be a weekday and should
not be a weekend.
● The selected date range should highlight only weekdays and weekends should not be
highlighted.
● The user should be able to change the year displayed in the date picker.
● The user should be able to change the month displayed in the date picker.
● The component should include a change handler that returns the selected date range
and any weekend dates within that range. As an example, if the range selected is
December 1st, 2022, to December 15th, 2022, the returned values should be an array
containing the date range as the first element (e.g. [2022-12-01, 2022-12-15]) and an
array of weekend dates within that range as the second element (e.g. [2022-12-03,
2022-12-04, 2022-12-10, 2022-12-11]).
● The component should include a prop that allows the user to input predefined ranges,
such as the last 7 days or last 30 days. These predefined ranges should be displayed
below the calendars.
Please refer to the date range picker linked below as an example:
rsuitejs.com/components/date-range-picker/#predefined-date-ranges
The use of date picker libraries (e.g. react-datepicker) or date libraries (e.g. date-fns,
Moment.js, Day.js) is strictly prohibited.
sir please a tutorial for this problem
Hey Piyush bro, I found a small issue with the throttle polyfill. Once I stop clicking the button, at the end we need to make a call to the cb function.
Here's the modified code. lmk if this is right
function throttle(fn, delay) {
let prevTime = 0;
let waitingArgs = null;
return function(...args) {
waitingArgs = args;
const currTime = new Date().getTime();
if (currTime - prevTime >=delay ) {
fn(...args);
waitingArgs=null;
prevTime = currTime;
} else {
setTimeout(() => {
waitingArgs !== null && fn(...waitingArgs);
waitingArgs = null;
}, delay)
}
}
}
Can't we use setInterval for creating own throttle time implementation??
if you use setInvterval, it will keep adding on constant time no matter if you click the button or not.
@@fredianriko5648 we can manually clear the Interval right after specific seconds?
@@rajathgatty sure, you can use clearInterval() after certain condition you declare
WORTH WATCHING
that fucking fine 😭😭
7:35 that's fucking fine indeed :D