30 May 2024

#Java_Versions

#Javascript
Level Topic Subtopics
Basic Introduction History of JavaScript, ECMAScript, JavaScript Engines, Running JavaScript, Use Cases
Variables & Data Types var, let, const, Primitive Types, Reference Types, Type Coercion
Operators Arithmetic, Comparison, Logical, Assignment, Ternary
Control Flow if/else, switch, for, while, do-while, break & continue
Functions Function Declaration, Function Expression, Arrow Functions, Default Parameters, Rest/Spread
Intermediate Objects & Arrays Object Creation, Array Methods (map, filter, reduce), Destructuring, Spread/Rest, Object.assign
Scope & Hoisting Global Scope, Function Scope, Block Scope, Variable Hoisting, Function Hoisting
Closures Definition, Lexical Scope, Practical Use Cases, Module Pattern, Private Variables
DOM Manipulation Selecting Elements, Creating Elements, Event Handling, Class Manipulation, DOM Traversal
Asynchronous JS Callbacks, Promises, async/await, Event Loop, Microtasks vs Macrotasks
Advanced Prototypes & Inheritance Prototype Chain, proto, Object.create, Class Syntax, Inheritance Patterns
Advanced Functions Higher-Order Functions, Currying, Memoization, Partial Application, Function Composition
Error Handling try/catch/finally, Error Object, Custom Errors, Error Propagation, Debugging
Modules ES6 Modules (import/export), CommonJS, AMD, UMD, Dynamic Imports
Event Handling Model Event Bubbling, Event Capturing, Delegation, Passive Listeners, Custom Events
Expert Performance & Optimization Memory Management, Garbage Collection, Event Loop Optimization, Debouncing & Throttling, Lazy Loading
Design Patterns Singleton, Factory, Observer, Module, Revealing Module
Security in JS XSS Prevention, CSP, Sanitization, CORS, Secure Coding Practices
Advanced Async Patterns Generators, Iterators, Observables, Web Workers, Service Workers
JavaScript in Modern Apps ESNext Features, TypeScript with JS, WebAssembly, Micro-Frontends, Edge Computing

1. Basics & Fundamentals

  1. What is JavaScript and how is it different from Java?
  2. Explain the difference between ES5 and ES6.
  3. What are variables in JavaScript?
  4. Differentiate between var, let, and const.
  5. What are primitive data types in JavaScript?
  6. What are reference types in JavaScript?
  7. Explain type coercion in JavaScript.
  8. What is the difference between == and ===?
  9. What are template literals in ES6?
  10. What is the typeof operator?
  11. How do you check if a variable is an array?
  12. What is NaN in JavaScript?
  13. What is the difference between null and undefined?
  14. How do you convert a string to a number in JavaScript?
  15. What are truthy and falsy values?
  16. What is the difference between implicit and explicit type conversion?
  17. What is hoisting in JavaScript?
  18. How does variable shadowing work?
  19. What is the difference between block scope and function scope?
  20. Explain the concept of scope chain.
  21. What is the difference between shallow copy and deep copy?
  22. How do you clone an object in JavaScript?
  23. What is the difference between pass by value and pass by reference?
  24. What are reserved keywords in JavaScript?
  25. What is the difference between synchronous and asynchronous execution?

2. Functions

  1. What is a function in JavaScript?
  2. Differentiate between function declaration and function expression.
  3. What are arrow functions and how are they different?
  4. What are higher-order functions?
  5. What is a callback function?
  6. Explain function currying with an example.
  7. What are default parameters in functions?
  8. What is the rest parameter in ES6?
  9. What is the spread operator in functions?
  10. Explain recursion in JavaScript.
  11. What is the difference between pure and impure functions?
  12. How do you memoize a function?
  13. What is the difference between call, apply, and bind?
  14. How do you implement function overloading in JavaScript?
  15. Explain the concept of closures.
  16. What are immediately invoked function expressions (IIFE)?
  17. What is function hoisting?
  18. Explain anonymous functions in JavaScript.
  19. What are generator functions?
  20. Explain async functions in JavaScript.
  21. What is tail call optimization?
  22. How do you debounce a function?
  23. How do you throttle a function?
  24. What is the difference between named and anonymous functions?
  25. How does the this keyword behave in functions?

3. Objects & Arrays

  1. What are objects in JavaScript?
  2. How do you create an object in JavaScript?
  3. What is object destructuring?
  4. What are object methods in ES6?
  5. Explain the difference between Object.seal and Object.freeze.
  6. What are object prototypes?
  7. How do you check if an object has a property?
  8. How do you loop through object properties?
  9. What are computed property names?
  10. What is Object.assign used for?
  11. Explain the difference between Map and Object.
  12. What is a WeakMap?
  13. What is a WeakSet?
  14. What is the difference between Set and Array?
  15. What are array methods like map, filter, reduce?
  16. Explain the difference between forEach and map.
  17. How do you flatten a nested array in JavaScript?
  18. What is array destructuring?
  19. How do you remove duplicates from an array?
  20. How do you merge two arrays in JavaScript?
  21. What is the difference between slice and splice?
  22. How do you find the maximum value in an array?
  23. What is the difference between find and filter?
  24. What are array-like objects?
  25. What is the difference between mutable and immutable objects?

4. DOM Manipulation

  1. What is the DOM?
  2. How do you select an element by ID in JavaScript?
  3. How do you select elements by class name?
  4. What is the difference between querySelector and querySelectorAll?
  5. How do you create an element in JavaScript?
  6. How do you append a child element?
  7. How do you remove a DOM element?
  8. What is innerHTML vs textContent?
  9. How do you change the style of an element dynamically?
  10. What are DOM events?
  11. What is the difference between inline, inline-block, and block elements?
  12. What is event bubbling in JavaScript?
  13. What is event capturing in JavaScript?
  14. How do you use event delegation?
  15. What is the difference between addEventListener and onclick?
  16. How do you trigger a click event programmatically?
  17. How do you prevent the default behavior of an event?
  18. What is stopPropagation in JavaScript?
  19. How do you handle form validation with JavaScript?
  20. How do you dynamically create and add CSS classes?
  21. How do you toggle a class on an element?
  22. How do you implement drag-and-drop in JavaScript?
  23. How do you detect when the DOM is fully loaded?
  24. What is the difference between DOMContentLoaded and load events?
  25. How do you manipulate attributes of a DOM element?

5. Asynchronous JavaScript

  1. What is asynchronous programming in JavaScript?
  2. What is a callback function?
  3. What is the difference between synchronous and asynchronous code?
  4. What is the event loop in JavaScript?
  5. What are microtasks and macrotasks?
  6. Explain the difference between setTimeout and setInterval.
  7. What is Promise in JavaScript?
  8. What are the states of a Promise?
  9. What is the difference between resolve and reject?
  10. How do you chain promises?
  11. What is Promise.all?
  12. What is Promise.race?
  13. What is Promise.any?
  14. What is Promise.allSettled?
  15. What are async/await keywords?
  16. How do you handle errors in async/await?
  17. What is the difference between async and defer in script tags?
  18. What is callback hell?
  19. How do you avoid callback hell?
  20. What are generators in JavaScript?
  21. What are Observables?
  22. What are Web Workers?
  23. What is the Fetch API?
  24. How does Axios differ from Fetch?
  25. What is JSON and how is it used in async calls?

6. Scope, Execution & Closures

  1. What is lexical scope in JavaScript?
  2. What is the scope chain?
  3. What is the difference between global and local scope?
  4. What is block scope?
  5. What is function scope?
  6. Explain execution context in JavaScript.
  7. What are phases of execution context?
  8. What is variable environment?
  9. Explain closure with an example.
  10. What are use cases of closures?
  11. What is the difference between closure and scope?
  12. How do closures help in data hiding?
  13. What is the difference between module pattern and closures?
  14. What are memory leaks in closures?
  15. What is temporal dead zone (TDZ)?
  16. What is strict mode in JavaScript?
  17. What happens if you forget var/let/const in strict mode?
  18. What is the difference between this inside arrow function and normal function?
  19. How does this keyword behave in different scopes?
  20. What is globalThis?
  21. What is eval in JavaScript?
  22. Why is eval discouraged?
  23. How do closures help in implementing currying?
  24. How do you implement a private counter with closures?
  25. What is the difference between closure and garbage collection?

7. Prototypes & OOP

  1. What is prototype in JavaScript?
  2. What is the prototype chain?
  3. What is proto in JavaScript?
  4. How do you implement inheritance using prototypes?
  5. What is the difference between prototype and class in ES6?
  6. How do you define a class in ES6?
  7. What are class fields in ES6?
  8. What are static methods in classes?
  9. What is the difference between constructor and class methods?
  10. How do you extend a class in ES6?
  11. What is super() keyword?
  12. What is encapsulation in JavaScript?
  13. What is polymorphism in JavaScript?
  14. What is abstraction in JavaScript?
  15. What is the difference between composition and inheritance?
  16. What are mixins in JavaScript?
  17. What is method chaining in JavaScript?
  18. What is the difference between ES6 classes and function constructors?
  19. How do you create a singleton object in JavaScript?
  20. What are private fields in ES2022?
  21. What are getters and setters in classes?
  22. How do you override methods in JavaScript?
  23. What is multiple inheritance in JavaScript?
  24. What is the difference between instanceof and typeof?
  25. How do you check if an object is created from a specific class?

8. Error Handling & Debugging

  1. What is error handling in JavaScript?
  2. What is the difference between syntax error and runtime error?
  3. What is try-catch-finally in JavaScript?
  4. How do you throw custom errors?
  5. What are error objects in JavaScript?
  6. What is stack trace in errors?
  7. How do you handle asynchronous errors?
  8. What is the difference between onerror and addEventListener('error')?
  9. What is the difference between console.log, console.error, and console.warn?
  10. How do you use console.table?
  11. What is the difference between debugger statement and console.log?
  12. How do you use breakpoints in browser DevTools?
  13. How do you debug promises?
  14. How do you debug async/await functions?
  15. How do you monitor network requests in JavaScript?
  16. What are uncaught exceptions?
  17. What are unhandled promise rejections?
  18. How do you handle global errors?
  19. How do you implement error boundaries in frontend apps?
  20. What is try...finally without catch?
  21. How do you create custom error classes?
  22. How do you differentiate between operational and programmer errors?
  23. What is strict mode?s effect on errors?
  24. How do you log errors in production?
  25. What are common debugging tools for JavaScript?

9. Advanced Topics

  1. What are JavaScript modules?
  2. What is the difference between CommonJS and ES6 modules?
  3. What is dynamic import in JavaScript?
  4. What is tree-shaking in JavaScript bundlers?
  5. What is memoization in JavaScript?
  6. How do you implement caching in JavaScript?
  7. What is an EventEmitter?
  8. What is reactive programming in JavaScript?
  9. What are promises vs observables?
  10. What is the difference between synchronous iteration and asynchronous iteration?
  11. What are WebSockets?
  12. How do you implement pub-sub in JavaScript?
  13. What is service worker in JavaScript?
  14. What is push notification API?
  15. What are streams in JavaScript?
  16. How do you use fetch with streams?
  17. What is WebRTC?
  18. What are shared workers?
  19. How does JavaScript handle concurrency?
  20. What are atomics in JavaScript?
  21. What is the difference between BigInt and Number?
  22. What is Intl API in JavaScript?
  23. How do you internationalize a JavaScript app?
  24. What is Proxy in JavaScript?
  25. What is Reflect API?

10. Performance & Best Practices

  1. How do you improve JavaScript performance?
  2. What is debouncing and how do you implement it?
  3. What is throttling and how do you implement it?
  4. How do you optimize loops in JavaScript?
  5. What is lazy loading in JavaScript?
  6. How do you use requestAnimationFrame?
  7. What is the difference between localStorage, sessionStorage, and cookies?
  8. How do you use IndexedDB in JavaScript?
  9. How do you handle memory leaks in JavaScript?
  10. What is garbage collection in JavaScript?
  11. How do you profile JavaScript performance?
  12. What is the difference between minification and compression?
  13. How do you use Web Workers for performance?
  14. How do you handle long-running tasks in JavaScript?
  15. What is event delegation?s role in performance?
  16. What are best practices for writing maintainable JavaScript code?
  17. How do you structure large-scale JavaScript applications?
  18. What is code splitting in modern bundlers?
  19. How do you optimize bundle size in JavaScript apps?
  20. What is tree-shaking in bundlers like Webpack?
  21. How do you optimize React/Angular apps using JavaScript?
  22. How do you secure JavaScript code in frontend apps?
  23. What is CSP and how does it help security?
  24. How do you handle performance bottlenecks in SPAs?
  25. What are common pitfalls to avoid in JavaScript?

No comments:

Post a Comment

Most views on this month

Popular Posts