What is the drawback of using "inheritance" through the prototype chain?

  • Limited support for multiple inheritance
  • Increased memory consumption
  • Difficulty in understanding and debugging
  • Inability to create encapsulated objects
One drawback of using "inheritance" through the prototype chain in JavaScript is limited support for multiple inheritance. JavaScript does not support multiple inheritance directly, meaning an object cannot inherit from multiple prototypes simultaneously. This limitation can lead to complex workarounds or potential conflicts when trying to inherit from multiple sources. While it's possible to implement multiple inheritance in JavaScript using mixins or other patterns, it's not as straightforward as in some other programming languages.

How can you create a new Promise?

  • Using the new Promise() constructor
  • Using the async/await syntax
  • By directly returning a value
  • Using the try/catch block
You can create a new Promise in JavaScript using the new Promise() constructor. This constructor takes a single argument, a function, which in turn takes two parameters, resolve and reject. Inside this function, you define the asynchronous operation, and when it's complete, you call resolve with the result if it's successful or reject if there's an error.

How is block scope affected when using var compared to let and const?

  • var variables have block scope only within functions.
  • var variables have function scope.
  • let and const variables have block scope.
  • let and const variables have global scope.
Variables declared with "var" in JavaScript have function scope, meaning they are only scoped to the function in which they are declared. On the other hand, "let" and "const" introduce block scope, meaning they are scoped to the nearest enclosing block, like loops or conditionals. This block-level scoping behavior prevents issues like variable hoisting and improves code maintainability.

What will be the length of the array after [1, 2, 3].unshift(4, 5);?

  • 2
  • 3
  • 4
  • 5
The length of the array will be 5. The unshift() method adds one or more elements to the beginning of an array and returns the new length of the array. In this case, it adds 4 and 5 to the beginning of the array, making it [4, 5, 1, 2, 3], so the length is 5.

To remove a child element, you should use the removeChild method on the _________ element.

  • parent
  • child
  • document
  • sibling
To remove a child element from the DOM using JavaScript, you should use the removeChild method on the parent element that contains the child you want to remove. The removeChild method doesn't directly operate on the child element itself.

The _______ pattern allows a new object to be created by cloning an existing object to avoid the overhead of creating an object from scratch.

  • Singleton
  • Prototype
  • Decorator
  • Observer
The Prototype pattern allows a new object to be created by cloning an existing object, avoiding the overhead of creating an object from scratch. It involves creating an object as a prototype and then creating new instances by copying that prototype.

What does the responseType property of an XMLHttpRequest object determine?

  • The data type of the request
  • The request method
  • The URL of the request
  • The timeout for the request
The responseType property of an XMLHttpRequest object determines the expected data type of the response. It allows you to specify whether you expect the response to be in text, JSON, XML, or other formats. Setting this property correctly is important for parsing and handling the response data properly in your JavaScript code.

A callback function is passed as an ________ to other functions and is executed after its parent function has completed.

  • argument
  • object
  • attribute
  • expression
A callback function is passed as an "argument" to other functions in JavaScript. It is a function that is executed after its parent function has completed its execution. This allows for asynchronous operations and event handling in JavaScript.

Which method returns a promise that resolves with the result of parsing the body text as JSON?

  • .json() method
  • .text() method
  • .body() method
  • .parseJSON() method
The .json() method of a Response object returned by fetch parses the response body text as JSON and returns a Promise that resolves with the parsed data. This method is commonly used when making API requests to obtain structured data in JSON format. The .text() method returns the response body as plain text, while .body() does not exist, and .parseJSON() is not a standard method in JavaScript.

The createElement method is used to create a new element in the _________.

  • browser
  • JavaScript
  • document
  • DOM
The createElement method in JavaScript is used to create a new HTML element within the Document Object Model (DOM). It allows you to dynamically create HTML elements that can be added to the web page or modified as needed.