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