Using _________, you can condense an array into a single value, optionally starting with an initial value.

  • map
  • reduce
  • filter
  • forEach
The correct answer is reduce. This method allows you to condense the elements of an array into a single value, using a provided function. It is particularly useful for tasks like summing values or finding the maximum element.

Asynchronous callbacks are placed in a queue known as the __________ queue.

  • Callback Queue
  • Event Queue
  • Promise Queue
  • Execution Queue
Asynchronous callbacks are placed in the Callback Queue, and they wait for the Event Loop to move them to the Call Stack for execution when the stack is empty.

Is it possible to destructure properties from nested objects?

  • Yes
  • No
  • Only if the nested object has a single property
  • Only if the nested object is declared as a constant
Yes, in ES6, destructuring assignment can be used to extract properties from nested objects. This allows for a more convenient and concise way of accessing values within nested structures, enhancing code simplicity.

A common use case for WeakMap is to store ________ data for objects.

  • metadata
  • private
  • public
  • static
A common use case for WeakMap is to store metadata or additional information related to objects. Since WeakMap does not prevent object keys from being garbage collected, it's useful for storing data that should not interfere with garbage collection.

Consider a scenario where you are integrating third-party APIs in a web application. How would you ensure that API failures do not crash your application?

  • Implementing robust error handling, logging, and potentially using circuit breakers
  • Ignoring API errors and allowing the application to continue execution
  • Restarting the application upon API failure
  • Redirecting users to a generic error page on any API failure
Ensuring the resilience of the application against API failures involves implementing robust error handling mechanisms. This includes catching and logging errors, implementing retry strategies, and potentially using circuit breakers to temporarily halt requests in the event of persistent failures. Ignoring errors or restarting the application can lead to a degraded user experience and make troubleshooting difficult.

How are escape sequences like n treated in template literals?

  • Treated as a newline character
  • Ignored
  • Treated as a literal backslash followed by 'n'
  • Throws an error
In template literals, escape sequences like n are treated as newline characters. This allows for multi-line strings without the need for explicit line break characters.

In what order are tasks executed given JavaScript’s event loop and call stack mechanism?

  • Based on the complexity of the task
  • First In, First Out (FIFO) order
  • Random order
  • Last In, First Out (LIFO) order
Tasks in JavaScript are executed in a First In, First Out (FIFO) order. The event loop continually checks the call stack and executes tasks in the queue. This order ensures that tasks are processed in the sequence they are received, maintaining the integrity of the program's logic.

In a scenario where you need to convert an array of user objects into an array of names, which array method is the most suitable?

  • map
  • filter
  • reduce
  • forEach
In this scenario, the most suitable array method is map. The map method is designed for transforming each element of an array and returning a new array with the transformed values. It allows you to extract the names from the user objects efficiently.

In a scenario where you need to create private-like properties in an object, how would the Symbol type be used effectively?

  • Using Symbol.createPrivateProperty
  • Using Symbols as property names
  • Using Object.defineProperty with Symbol
  • Using private keyword
The correct option is using Symbols as property names. Symbols are unique and can be used as keys for object properties, providing a way to create private-like properties in an object. They help in avoiding naming conflicts and provide a level of encapsulation. Using Object.defineProperty with Symbol is a common approach to achieve this. The other options are incorrect as there is no direct Symbol.createPrivateProperty method, and the private keyword is not a standard feature in ES6 for creating private properties.

Prototype-based inheritance in JavaScript is an example of _________ inheritance, as opposed to class-based inheritance.

  • Single
  • Multiple
  • Hierarchical
  • Object
JavaScript uses prototype-based inheritance, where objects can inherit properties from other objects, forming a hierarchical chain of prototypes. This is different from class-based inheritance systems.