JavaScript Expert
How are heaps related to JavaScript?
Select the correct answer
Heaps in JavaScript are related to memory allocation.
Heaps in JavaScript are used to style HTML elements.
Heaps in JavaScript are a type of function.
Heaps in JavaScript are used to manage browser cookies.
What is a generator function?
Select the correct answer
A generator function is a function that only works with arrays.
A generator function is a function that can only be used in synchronous code.
A generator function is a function that always returns a promise.
A generator function is a function that can pause and resume its execution.
What is the difference between reflow and repaint?
Select the correct answer
Reflow and repaint are the same process.
Reflow is the process of calculating the layout of a webpage, while repaint is the process of updating the visual appearance.
Reflow and repaint are used only in backend development.
Repaint is the process of calculating the layout of a webpage, while reflow is the process of updating the visual appearance.
Why is JavaScript treated as single-threaded?
Select the correct answer
JavaScript is treated as single-threaded because it executes one piece of code at a time.
JavaScript is treated as single-threaded because it can only run on single-core processors.
JavaScript is treated as single-threaded because it is used only for styling.
JavaScript is treated as single-threaded because it can only be used on servers.
What Is Obfuscation in JavaScript?
Select the correct answer
Obfuscation in JavaScript is the practice of styling HTML elements.
Obfuscation in JavaScript is the practice of compiling code.
Obfuscation in JavaScript is the practice of making code easier to read.
Obfuscation in JavaScript is the practice of making code difficult to understand.
What is a Temporal Dead Zone?
Select the correct answer
A Temporal Dead Zone is the time between scope exit and variable declaration.
A Temporal Dead Zone is the time between variable assignment and variable declaration.
A Temporal Dead Zone is the time between variable declaration and variable assignment.
A Temporal Dead Zone is the time between entering a scope and when the variable is declared.
Explain hoisting.
Select the correct answer
Hoisting is a server-side technique.
Hoisting is a JavaScript mechanism for managing browser cookies.
Hoisting is a JavaScript mechanism for styling HTML elements.
Hoisting is a JavaScript mechanism where variables and function declarations are moved to the top of their scope.
What is event delegation in JavaScript?
Select the correct answer
Event delegation is a server-side technique.
Event delegation is used to style HTML elements.
Event delegation is a method to stop event propagation.
Event delegation is a technique for handling events where a single event listener is added to a parent element.
What is ArrayBuffer?
Select the correct answer
ArrayBuffer is used to manage browser cookies.
ArrayBuffer is a type of object used to represent a fixed-length raw binary data buffer.
ArrayBuffer is used to style HTML elements.
ArrayBuffer is a server-side technology.
What is polyfill?
Select the correct answer
A polyfill is used to manage browser cookies.
A polyfill is a server-side technology.
A polyfill is used to style HTML elements.
A polyfill is code that provides modern functionality in older environments that do not natively support it.
What are modules?
Select the correct answer
Modules are server-side components.
Modules are reusable pieces of code that can be imported and exported.
Modules are used to manage browser cookies.
Modules are used to style HTML elements.
What is Object.freeze?
Select the correct answer
Object.freeze allows modifications to an object.
Object.freeze prevents modifications to an object.
Object.freeze duplicates an object.
Object.freeze styles HTML elements.
What is type coercion?
Select the correct answer
Type coercion is used for styling HTML elements.
Type coercion is the process of declaring variables.
Type coercion is the manual conversion of values from one type to another.
Type coercion is the automatic conversion of values from one type to another.
Explain the spread/rest operator (...) in ES6.
Select the correct answer
The spread operator (...) is used only for objects, and the rest operator (...) is used only for arrays.
The spread operator (...) expands iterable values, and the rest operator (...) condenses multiple elements into an array.
The spread operator (...) and the rest operator (...) are used for styling HTML elements.
The spread operator (...) condenses multiple elements into an array, and the rest operator (...) expands iterable values.
What are the difference between es5 and es6?
Select the correct answer
ES6 is used for backend development only.
ES6 is the same as ES5 with no new features.
ES5 introduced features like arrow functions, classes, and template literals.
ES6 introduced features like arrow functions, classes, and template literals.
How do you determine two values same or not using object in JavaScript?
Select the correct answer
To determine if two values are the same, use Object.is method.
To determine if two values are the same, use Object.copy method.
To determine if two values are the same, use Object.equal method.
To determine if two values are the same, use Object.compare method.
What is the Event Loop in JavaScript, and how does it work?
Select the correct answer
The Event Loop in JavaScript styles HTML elements.
The Event Loop in JavaScript compiles the code.
The Event Loop in JavaScript manages browser cookies.
The Event Loop in JavaScript manages the execution of asynchronous code.
What is optional chaining?
Select the correct answer
Optional chaining is a feature that allows safe access to nested object properties.
Optional chaining is used to import modules.
Optional chaining is used to declare variables.
Optional chaining is used to style HTML elements.
What is a Cross-Origin Resource Sharing (CORS) policy, and how does it work?
Select the correct answer
Cross-Origin Resource Sharing (CORS) policy is used to style web pages.
Cross-Origin Resource Sharing (CORS) policy allows restricted resources on a web page to be requested from another domain.
Cross-Origin Resource Sharing (CORS) policy is a server-side technology.
Cross-Origin Resource Sharing (CORS) policy is used to compile JavaScript code.
What is Cross-Site Scripting (XSS) in web security, and how can you prevent it?
Select the correct answer
Cross-Site Scripting (XSS) is a method to style web pages.
Cross-Site Scripting (XSS) is a security vulnerability that allows attackers to inject malicious scripts into web pages.
Cross-Site Scripting (XSS) is a server-side technology.
Cross-Site Scripting (XSS) is used to manage browser cookies.
What is a pure function?
Select the correct answer
A pure function is a function that has no side effects and returns the same output for the same input.
A pure function is a function that only works with strings.
A pure function is a function that always returns a promise.
A pure function is a function that can only be used in synchronous code.
What is a higher-order function?
Select the correct answer
A higher-order function is a function that always returns a promise.
A higher-order function is a function that is always asynchronous.
A higher-order function is a function that only works with arrays.
A higher-order function is a function that takes another function as an argument or returns a function.
What is ECMAScript?
Select the correct answer
ECMAScript is the standard on which JavaScript is based.
ECMAScript is a JavaScript library.
ECMAScript is a server-side language.
ECMAScript is a CSS framework.
What is AJAX, and how does it work in JavaScript?
Select the correct answer
AJAX allows web pages to be updated asynchronously by exchanging data with a server.
AJAX is used to style web pages.
AJAX is a server-side technology.
AJAX is used to compile JavaScript code.
What is the difference between double (==) and triple (===) equals in JavaScript?
Select the correct answer
Double equals (==) checks for object reference equality, triple equals (===) checks for array equality.
Double equals (==) checks for value equality, triple equals (===) checks for value and type equality.
Double equals (==) checks for value and type equality, triple equals (===) checks for value equality.
Double equals (==) and triple equals (===) are the same.
Is JavaScript pass by reference or pass by value?
Select the correct answer
JavaScript is always pass by reference.
JavaScript is always pass by value.
JavaScript is pass by reference for primitives and pass by value for objects.
JavaScript is pass by value for primitives and pass by reference for objects.
What is the difference between the client side and server side?
Select the correct answer
Client side refers to server operations, server side refers to browser operations.
Client side refers to operations on the user's browser, server side refers to operations on the server.
Client side and server side do not perform operations.
Client side and server side are the same.
What is NaN?
Select the correct answer
NaN stands for Not-a-Number, representing an invalid number.
NaN stands for Null-and-Number.
NaN stands for Not-a-Number, representing a valid number.
NaN stands for Number-and-Null.
What is the difference between null and undefined?
Select the correct answer
null and undefined are used to declare variables.
null and undefined are the same.
null represents the uninitialized state, undefined represents the intentional absence of value.
null represents the intentional absence of value, undefined represents the uninitialized state.
What is the difference between a shallow and a deep copy?
Select the correct answer
A shallow copy duplicates all nested properties, a deep copy duplicates only the top-level properties.
A shallow copy duplicates only the top-level properties, a deep copy duplicates all nested properties.
Shallow copy and deep copy are the same.
Shallow copy and deep copy do not duplicate properties.
What are template literals (template strings) in ES6?
Select the correct answer
Template literals are string literals allowing embedded expressions.
Template literals are used to style HTML elements.
Template literals are used to import modules.
Template literals are used to declare variables.
What is the role of a package manager like npm or yarn in JavaScript development?
Select the correct answer
A package manager like npm or yarn manages browser cookies.
A package manager like npm or yarn styles HTML elements.
A package manager like npm or yarn compiles JavaScript code.
A package manager like npm or yarn manages dependencies and packages in JavaScript.
What is the difference between event bubbling and event capturing?
Select the correct answer
Event bubbling propagates events from child to parent, event capturing from parent to child.
Event capturing propagates events from child to parent, event bubbling from parent to child.
Event bubbling and event capturing are the same.
Event bubbling and event capturing do not propagate events.
How to prevent event bubbling?
Select the correct answer
To prevent event bubbling, use the stopPropagation method.
To prevent event bubbling, use the preventDefault method.
To prevent event bubbling, use the stopImmediatePropagation method.
To prevent event bubbling, use the addEventListener method.
Explain event bubbling in JavaScript?
Select the correct answer
Event bubbling is used to prevent event default behavior.
Event bubbling is the event propagation from child to parent elements.
Event bubbling is the event propagation from parent to child elements.
Event bubbling stops the event from being propagated.
Explain Promise.all.
Select the correct answer
Promise.all takes an array of promises and returns a single promise.
Promise.all executes promises in sequence.
Promise.all returns the first resolved promise.
Promise.all is used to handle synchronous operations.
What is callback hell?
Select the correct answer
Callback hell refers to the situation where callbacks are nested within other callbacks.
Callback hell is when callbacks are executed in parallel.
Callback hell occurs when callbacks are used in synchronous code.
Callback hell is when callbacks are used to manage CSS styles.
What are Promises?
Select the correct answer
Promises are used to perform mathematical operations.
Promises are used to declare variables.
Promises are used to manage CSS styles.
Promises are used to handle asynchronous operations in JavaScript.
What are callback functions?
Select the correct answer
Callback functions are used to style HTML elements.
Callback functions are only used in synchronous code.
Callback functions are functions that call themselves recursively.
Callback functions are functions passed into another function as an argument.
Explain synchronous vs asynchronous programming.
Select the correct answer
Synchronous programming allows tasks to run concurrently, while asynchronous programming executes tasks sequentially.
Synchronous programming executes tasks sequentially, while asynchronous programming allows tasks to run concurrently.
Synchronous programming is only used in frontend development, while asynchronous programming is used in backend development.
Synchronous programming is used for styling, while asynchronous programming is used for scripting.
What is the difference between Session Storage and Local Storage?
Select the correct answer
Session Storage data is cleared when the page session ends, Local Storage persists.
Local Storage data is cleared when the page session ends, Session Storage persists.
Session Storage can store more data than Local Storage.
Local Storage can only store strings, Session Storage can store objects.
Explain the concept of closures in JavaScript
Select the correct answer
Closures are used to style HTML elements.
Closures are used to import modules.
Closures prevent functions from accessing variables from an outer function scope.
Closures allow functions to access variables from an outer function scope.
What are the main differences between arrow and regular functions?
Select the correct answer
Arrow functions cannot be assigned to variables.
Arrow functions cannot accept arguments.
Arrow functions are always synchronous.
Arrow functions do not have their own this context.
What is the difference between function declaration and function expression JavaScript?
Select the correct answer
Function expressions are hoisted, function declarations are not.
Function declarations are hoisted, function expressions are not.
Both function declarations and function expressions are hoisted.
Neither function declarations nor function expressions are hoisted.
What are Imports and Exports in JavaScript?
Select the correct answer
Imports and Exports are used to style HTML elements.
Imports and Exports allow modules to be used across different files.
Imports and Exports are used for defining CSS classes.
Imports and Exports manage database connections.
What is the this keyword in JavaScript?
Select the correct answer
The this keyword is not used in JavaScript.
The this keyword refers to the object it belongs to.
The this keyword refers to the global object always.
The this keyword refers to the function's prototype.
What are the differences between var, let, and const?
Select the correct answer
var is function-scoped, let and const are block-scoped.
var and const are block-scoped, let is function-scoped.
var is block-scoped, let and const are function-scoped.
var and let are block-scoped, const is function-scoped.
What is the difference between the Document and Window in Javascript?
Select the correct answer
The Document object represents the HTML document, while the Window object represents the browser window.
The Document object is used for JavaScript code, while the Window object is used for CSS.
The Document object is for backend logic, while the Window object is for frontend logic.
The Document object is for APIs, while the Window object is for HTML tags.
Explain the window object.
Select the correct answer
The window object is a backend server component.
The window object is used to style elements in CSS.
The window object represents the document's body.
The window object represents the browser's window.
What is the DOM?
Select the correct answer
The DOM is a JavaScript library.
The DOM is a database management system.
The DOM is a styling language for web pages.
The DOM is a programming interface for HTML and XML documents.
What are the differences between JavaScript and TypeScript?
Select the correct answer
TypeScript is a completely different language from JavaScript.
JavaScript is a superset of TypeScript that adds dynamic types.
TypeScript is a superset of JavaScript that adds static types.
JavaScript and TypeScript are both compiled languages.
What is the difference between JavaScript and Java?
Select the correct answer
JavaScript is a scripting language, while Java is a programming language.
JavaScript and Java are the same in terms of syntax.
JavaScript is compiled, while Java is interpreted.
JavaScript is used for backend, while Java is used for frontend.
Is JavaScript a compiled or interpreted language?
Select the correct answer
JavaScript is a compiled language.
JavaScript is an interpreted language.
JavaScript is neither compiled nor interpreted.
JavaScript is both compiled and interpreted.
Is JavaScript a statically typed or a dynamically typed language?
Select the correct answer
JavaScript is a weakly typed language.
JavaScript is a strongly typed language.
JavaScript is a statically typed language.
JavaScript is a dynamically typed language.