How can you add a new item to the beginning of an array?

  • arr.unshift(newItem);
  • arr.push(newItem);
  • arr.append(newItem);
  • arr.insert(0, newItem);
To add a new item to the beginning of an array in JavaScript, you can use the arr.unshift(newItem); method. This will insert newItem at the start of the array, shifting the existing elements to the right. push() adds to the end of the array, append() and insert() are not standard array methods.

What will the for...of loop iterate over in an array?

  • Indexes of the array
  • Property names of the array
  • Values of the array
  • The array itself
The for...of loop is used to iterate over the values of an array, making it useful for accessing the elements directly. Unlike the for...in loop, which iterates over properties, for...of provides a simple way to loop through the contents of an array.

You want to select an element with the ID 'special' using JavaScript. However, your code isn't working as expected. What could be the possible reason if the HTML structure is correct?

  • Typo in the ID selector
  • Missing JavaScript library inclusion
  • The element is hidden by CSS
  • Case sensitivity issues
If your code to select an element by its ID isn't working, one possible reason could be a typo in the ID selector. IDs are case-sensitive, so make sure it matches the ID attribute in the HTML exactly. The other options are less likely causes: missing libraries would generally cause JavaScript errors, and CSS hiding doesn't affect element selection.

How does the for...of loop handle objects by default?

  • It iterates over the properties.
  • It throws an error.
  • It iterates over the values.
  • It iterates over the keys.
The for...of loop in JavaScript is used for iterating over iterable objects like arrays, strings, maps, and sets. By default, it iterates over the values of an iterable, making it a convenient choice for iterating through the elements of an array or the characters of a string, for example. It doesn't work with plain objects (non-iterable) and would require additional steps or methods to iterate over object properties.

How does the event loop manage asynchronous operations in JavaScript?

  • It uses multithreading to execute multiple tasks concurrently.
  • It queues asynchronous tasks and processes them sequentially.
  • It creates separate threads for each asynchronous task.
  • It uses callbacks to handle asynchronous tasks.
The event loop in JavaScript manages asynchronous operations by queuing them and processing them sequentially. This approach ensures that JavaScript remains single-threaded, preventing concurrency issues and making it non-blocking. This mechanism is crucial for handling I/O operations efficiently and maintaining a responsive user interface.

Which data type is NOT available in JavaScript?

  • Symbol
  • Float
  • String
  • Array
JavaScript supports a wide range of data types, including numbers, strings, symbols, and arrays. However, "Float" is not a distinct data type in JavaScript; instead, it uses the "number" data type to represent both integers and floating-point numbers. Symbols are used for creating unique identifiers, strings store text, and arrays are used to store collections of values.

A function declaration is hoisted to the top of the ________ in which it was defined.

  • Scope
  • Block
  • Function
  • Statement
A function declaration is hoisted to the top of the function in which it was defined. This means you can use a function before declaring it in your code, but it's important to understand the implications of hoisting for variable scoping.

The method _______ is used to sort the elements of an array.

  • sort()
  • splice()
  • split()
  • reduce()
The correct method is sort(). JavaScript arrays have a built-in sort() method that is used to sort the elements of an array in ascending order by default. You can also provide a compare function to customize the sorting behavior. For example, myArray.sort((a, b) => a - b) sorts the array numerically.

You're refactoring your code to improve performance and notice a function that returns another function, accessing variables outside of its own scope. What specific JavaScript concept should you consider when optimizing this code section?

  • Function Closures
  • Function Prototypes
  • Event Bubbling
  • AJAX (Asynchronous JavaScript and XML)
When optimizing code that returns a function and accesses variables outside of its own scope, you should consider the concept of function closures. Function closures allow an inner function to "remember" and access variables from its containing (parent) function's scope even after the parent function has finished executing. This can be useful for encapsulating state and optimizing code.

The arithmetic operator _______ increments the value of a variable by 1.

  • ++
  • --
  • +
  • +=
The arithmetic operator '++' is known as the increment operator. It increases the value of a variable by 1. For example, if you have a variable x and you write x++, it will increment the value of x by 1. This is commonly used in loops and counters in JavaScript.