Reacting To My 'Google JavaScript Interview'

preview_player
Показать описание
Original Coding Interview on @clem's channel:

There's a lot more to technical coding interviews than just writing good code. In this video, I breakdown this frontend "Google JavaScript Interview" that I did, to discuss everything I did well and all of my mistakes.

Prepping for your frontend interviews? Use code "conner" for a discount on my course FrontendExpert:

Timestamps:
0:00 JavaScript Coding Interview Reaction
1:38 Interview Starts

Рекомендации по теме
Комментарии
Автор

Challenges and interviews are the most interesting types of videos for me .. And even better with reactions to them afterwards ..
I'd love to watch more of these ..
Keep up the good work ❤

OmarAtri
Автор

Definitely my favorite type of content on Youtube. And how I found your channel too! Thanks for doign this

PraiseYeezus
Автор

Awesome video, i love this type of content, you're super clear and straight to explain. Congrats!

juanferrer
Автор

Good content Conner, please do more videos like this

doodooti-ch
Автор

these kind of questions are for intermediate or beginners front-end developers?

fadynader
Автор

Thanks a lot! I'm preparing for a Javascript interview and finding your channel is amazing. I first saw the interview, and now checking your review is just great. Thanks for all the advices.

For the deepEquals function I did it this way (it has worked on a lot of possible cases I could test on). If someone is interested in checkng it out, let me know what you think:

function deepEquals(valueOne, valueTwo){
if(valueOne === valueTwo) return true

if(typeof(valueOne) === 'string' && typeof(valueTwo)=== 'string') return false
if(typeof(valueOne) === 'number' && typeof(valueTwo)=== 'number') {
if(isNaN(valueOne) && isNaN(valueTwo)) return true
return false
}
if(typeof(valueOne) === 'boolean' && typeof(valueTwo)=== 'boolean') return false
if(valueOne === null || valueTwo === null) return false
if(valueOne === undefined || valueTwo === undefined) return false
if(typeof(valueOne) === 'function' && typeof(valueTwo)=== 'function') return false
if(valueOne.length !== valueTwo.length) return false
if(valueOne.length !== undefined && valueTwo.length !== undefined){
for(let i=0; i< valueOne.length; i++){
if (!(deepEquals(valueOne[i], valueTwo[i]))) return false
}
return true
}

let valueOneKeys = Object.keys(valueOne)
let valueTwoKeys = Object.keys(valueTwo)

if(valueOneKeys.length !== valueTwoKeys.length) return false

for(let i=0; i < valueOneKeys.length; i++){
if(valueOneKeys[i] !== valueTwoKeys[i]) return false
}

for(let i=0; i < valueOneKeys.length; i++){
if(!(deepEquals(valueOne[valueOneKeys[i]], valueTwo[valueTwoKeys[i]]))) return false
}


return true

}

Jimmy_Johns