WATCH NEXT: Javascript Interview Questions and Answers - Dominate Your Next Interview - kzbin.info/www/bejne/rZ-8fHtombRpaJIsi=5DfbGEfhXWiiv0a_
@Vivek-Nishad Жыл бұрын
Object.assign and spread operator only work it you have a flat object like {a:1, b:2} But if you have nested object like {a:1,b:2,c:{d:3}} it will copy value of a and b but reference of c,d. so, if you want to copy nested objects you can use "structuredClone(obj)" or "JSON.parse(JSON.stringify(obj))"
@MonsterlessonsAcademy Жыл бұрын
You are totally right
@vishalupadhayay6391 Жыл бұрын
JSON.parse(JSON.stringify(obj)) will not work if the object has Arrays, Functions, and Date nested within. In such a scenario, we may have to use loadash or write one custom function to handle Arrays, Functions, and Date objects.
@KAZVorpalАй бұрын
I was here to specifically raise the same objection. But if I were an interviewer, I might be wanting an answer that showed understanding of the LOGIC of cloning. In other words, a recursive function that checks if the passed value is an object, returns it if not, but if it is, loops through its properties and calls ITSELF on each property that is an object, gradually building a new object, then returns the final product. I would not be satisfied with someone just using structuredClone() because I'd want to see their coding/algorithmic knowledge.
@AndreaDragotta Жыл бұрын
Regarding the clone example, be aware that these are shallow copies (they do not work correctly when the object contains other objects). If you need a deep copy you should use the new "structuredClone" api or the usual trick with "JSON.parse(JSON.stringify(obj))"
@MonsterlessonsAcademy Жыл бұрын
I have a full video about shallow comparison vs deep comparison. kzbin.info/www/bejne/qJaTeGtvedyCmJosi=snVLRIAqpU0_5OuN
@n_fan3299 ай бұрын
for the last question..we can also do Object.entries(mapping).sort((a,b)=>a
@MonsterlessonsAcademy9 ай бұрын
Sure there are different solutions to the same problem.
@SuperMatsumoto23 Жыл бұрын
I am sooo grateful for this video!! I am a junior developer currently preparing for my tech interviews, and some of this stuff was difficult to understand while just reading a text explanation. Thank you for showing these examples step by step, these have helped me get a better understanding of the theory. ♥
@MonsterlessonsAcademy Жыл бұрын
Glato to hear that. For interview preparation you might be interested in my Javascript interview questions course where you learn 56 different topics which fully cover Javascript. monsterlessons-academy.com/courses/javascript-interview-questions-coding-interview/
@francescaperfume2 ай бұрын
😊@@MonsterlessonsAcademy
@francescaperfume2 ай бұрын
@@MonsterlessonsAcademy😊
@francescaperfume2 ай бұрын
@@MonsterlessonsAcademy😊
@francescaperfume2 ай бұрын
@@MonsterlessonsAcademy😊
@joeldaros2 жыл бұрын
I really like your videos, you get straight to the point. Please make more videos like this one!
@MonsterlessonsAcademy2 жыл бұрын
I have now a full course of 59 coding exercises for Javascript interview. monsterlessons-academy.com/courses/javascript-interview-questions-coding-interview
@jonathanjohnson2785 Жыл бұрын
I don't have words to fully express my gratitude. Closures, cloning are things I found hard to understand but your style of teaching made everything so simple to understand. Thank you so much and all the best❤👍👍👏
@MonsterlessonsAcademy Жыл бұрын
Wow, thank you!
@bendevweb892 жыл бұрын
As a Junior Developer your content helps me a lot to prepare for interviews and improve my logic Thank you very much 👍
@MonsterlessonsAcademy2 жыл бұрын
Happy to hear that!
@dmytro-skh Жыл бұрын
as for me reduce in the last example is too complicated to understand and debug. Nice for an interview but I would avoid such things in real code. I.e. if jun dev will have to work with that piece of code. In general good video, will look others on the channel too :)
@keneldridge Жыл бұрын
I like Object.keys(counterObject).sort((a,b) => { return a > b ? -1 : 0 })[0]
@orz5516 Жыл бұрын
In the findVowels i would expect a senior developer would do it with an object because with includes that complexity is much higher. With an object you can just iterate the string once and check each time if the char is a vowel with O(1) complexity
@MonsterlessonsAcademy Жыл бұрын
There are different ways. Object is also not ideal. Regexr is easier that const vowelCount = str => { const regex = /[aeiouAEIOU]/g const s = str.match(regex) return s ? s.length : 0 }
@orz5516 Жыл бұрын
@@MonsterlessonsAcademy And thanks for the videos, you are great!
@damienspectre4231 Жыл бұрын
For the first problem - I understand closures and you are returning a fucntion within the parent function that returns the secret. but Im curious - why not return the secret string directly instead of within the child function? its a const and its private to the someFn() and cant be modified once declared...
@MonsterlessonsAcademy Жыл бұрын
It was just an example to show closures. environment variables should not be written in code in any case.
@jjjj54528 ай бұрын
Now just need to get an interview that asks one of these 5 questions...
@MonsterlessonsAcademy8 ай бұрын
Good luck with that
@mohammadyousuf1567 Жыл бұрын
I am addicted to your style of teaching .. : )
@MonsterlessonsAcademy Жыл бұрын
Glad to hear that!
@clement2814 Жыл бұрын
Thank you, clear and concise
@MonsterlessonsAcademy Жыл бұрын
Glad it was helpful!
@OliaYarukhina10 ай бұрын
Круто! Дякую! Цікаво звідки Ви, Олександре?)
@MonsterlessonsAcademy10 ай бұрын
Originally Ukraine, last 8 years Germany
@Shivam-sl4sp10 ай бұрын
Thank you man !!
@MonsterlessonsAcademy10 ай бұрын
You're welcome!
@yeti95372 жыл бұрын
This is great. Thanks!
@MonsterlessonsAcademy2 жыл бұрын
You're welcome!
@leojohn6702 Жыл бұрын
Quick question. Currently building my portfolio projects. But I have no knowledge of data structures and algorithms. Should i start training after my portfolio will be completed? Or prior the portfolio?
@MonsterlessonsAcademy Жыл бұрын
Do a portfolio, CV and then improve your knowledge and add it. If you are a junior forget about data structures and algorithms at all. learn language and framework.
@cryptopinky2355 Жыл бұрын
Why do we write acc[1] and el[1]? what is the index for and why is it always 1?
@MonsterlessonsAcademy Жыл бұрын
Because there are just 2 elements in the array and we want to work with the second one.
@dragosp.7635 Жыл бұрын
at 3:50. I see it also work const clone=object. Is it a good practice?
@MonsterlessonsAcademy Жыл бұрын
It is not. You assign the reference to the object and not a new object with a value. Try to change property of clone and check the value of both objects.
@testify7228 Жыл бұрын
Hi, For last question To get element which have max occurrence: After creating object, can we use .sort() nd do descending order based on Occurance nd then return first value from sorted object. Is it correct?
@MonsterlessonsAcademy Жыл бұрын
Hi, There are different ways to solve the same task.
@testify7228 Жыл бұрын
@@MonsterlessonsAcademy ok dude. Thanks for replay I saw ur 59 interview questions video course, really worth fir spending time in it
@sameoldsteven9571 Жыл бұрын
cant we solve the last question using Set?
@MonsterlessonsAcademy Жыл бұрын
There are different solutions to the same question
@amitkrishna2412 Жыл бұрын
Hi , Is there a document or a list of such interview questions that you have maintained?which I can follow?
@MonsterlessonsAcademy Жыл бұрын
No I don't have something like this. But I have a full course with 57 Javascript questions which covers all knowledge that you need. monsterlessons-academy.com/courses/javascript-interview-questions-coding-interview
@doniaelfouly4142 Жыл бұрын
thank you so much
@MonsterlessonsAcademy Жыл бұрын
Welcome 😊
@sliceem882 жыл бұрын
Best !
@MonsterlessonsAcademy2 жыл бұрын
Thank you!
@KAZVorpalАй бұрын
NOOO! Do not count all the strings, then SEPARATELY find the largest with a second reduce. How wasteful. Mark the highest all along, saving you an extra loop. Like this: const max = {name: "", count:0} target.reduce((namelist, name) => { if(namelist.has(name)) { const current = namelist.get(name)+1; namelist.set(name, current); (current > max.count) && ([max.name, max.count] = [name, current]); } else namelist.set(name, 1); return namelist; }, new Map); return max;
@MonsterlessonsAcademyАй бұрын
It depends on the size of the array. 2 functions are less performant but more readable. But if we work with 10 element then who cares.
@KAZVorpalАй бұрын
@@MonsterlessonsAcademy If done clearly, it's actually more readable as a single function. More importantly, it's better to impress the interviewer with how well you code as a JOB...and the better performance of doing it as a single loop would be far better in many situations where you're working with a large amount of data. Your code should be elegant and efficient, not just the most basic expression.
@AndrewTSq Жыл бұрын
The count vowels i just did [...str.toLowerCase().matchAll(/[aeiou]/g)].length not sure it was right, but worked on my examples :) fun questions :)