In a scenario where you have to create a function that acts differently based on the type of input (string, number, or boolean), how might you implement this using a switch statement?

  • Use separate case statements for each data type, and within each case, handle the specific behavior for that data type.
  • Convert the input to a string, and then use a single case statement for "string", "number", and "boolean" as switch cases.
  • Create individual functions for each data type and call the appropriate function based on the input type.
  • Use an if-else ladder instead of a switch statement to handle different data types.
When implementing a function that acts differently based on input types using a switch statement, it's best practice to use separate case statements for each data type. This ensures clarity and maintainability of your code, as each case can handle the specific behavior for that data type. Using a single case statement with type conversion is less readable and may lead to unexpected behavior. Individual functions for each type would increase code complexity unnecessarily, and using an if-else ladder is less efficient and less idiomatic in JavaScript.

Using _______ in front of a Promise-based function call makes JavaScript wait until that Promise settles and returns its result.

  • Wait
  • Hold
  • Async
  • Await
The keyword await is used in front of a Promise-based function call to make JavaScript wait for that promise to resolve or reject before proceeding with the code execution. It allows for writing asynchronous code in a more synchronous-like manner.

What does AJAX stand for in web development?

  • Asynchronous JavaScript and XML
  • Advanced JavaScript and XML
  • Asynchronous JavaScript and XHTML
  • Advanced JavaScript and HTML
AJAX stands for "Asynchronous JavaScript and XML." It is a set of web development techniques used to create asynchronous web applications. While XML was commonly used in the past, JSON is more prevalent today for data interchange in AJAX requests.

How can you add a new property to a JavaScript object

  • a) By using the Object.assign() method.
  • b) By using the Object.addProperty() method.
  • c) By simply assigning a value to a new property name.
  • d) By using the addProperty() function.
You can add a new property to a JavaScript object by simply assigning a value to a new property name. For example, myObject.newProperty = 'some value';. While you can use methods like Object.assign() to copy properties from one object to another, it's not used for adding new properties. There's no Object.addProperty() or addProperty() method.

In JavaScript, the _________ property is a reference to an object from which the current object inherits properties.

  • prototype
  • this
  • parent
  • child
In JavaScript, the prototype property is a reference to an object from which the current object inherits properties and methods. When you access a property or method on an object, JavaScript first looks for it on the object itself and then, if not found, on its prototype. Understanding prototypal inheritance is crucial in JavaScript.

The _______ method returns the removed item when an element is removed from an array.

  • shift()
  • pop()
  • remove()
  • splice()
The pop() method in JavaScript removes the last element from an array and returns that removed element. It's useful when you need to remove and capture the last item in an array. For instance, let removed = myArray.pop() would remove the last element from myArray and store it in the removed variable.

A _______ is a self-contained block of code that manipulates data, and can be thought of as an object in object-oriented programming.

  • Function
  • Module
  • Class
  • Closure
A Module is a self-contained block of code in JavaScript that manipulates data and can be thought of as an object in object-oriented programming. Modules help encapsulate functionality and data, providing a clean and organized code structure.

The concept of closures and lexical scoping in JavaScript is based on the ________ principle.

  • Scope
  • Encapsulation
  • Abstraction
  • Inheritance
The concept of closures and lexical scoping in JavaScript is based on the "Scope" principle. In JavaScript, scope determines the accessibility of variables and functions in different parts of your code, and closures are a powerful feature that leverages lexical scope to maintain access to variables even after their containing functions have finished executing.

How does the "this" keyword behave in arrow functions inside methods?

  • It refers to the instance of the class containing the method.
  • It refers to the global object (e.g., window in the browser).
  • It throws an error since arrow functions cannot be used inside methods.
  • It refers to the parent function's "this" value.
In arrow functions inside methods, the "this" keyword retains the value of the outer scope, typically the class instance. This behavior is different from regular functions, which have their own "this" binding. Understanding this behavior is crucial in object-oriented JavaScript programming.

The reduce() method applies a function against an accumulator and each value of the array (from left-to-right) to _______ it to a single value.

  • multiply
  • concatenate
  • reduce
  • filter
The reduce() method in JavaScript is used to apply a function to an accumulator and each element of the array (from left to right) to reduce it to a single value. It's often used for tasks like summing up values or aggregating data. The correct option is reduce.