How can you prevent script injection attacks when dynamically modifying element content with user input?
- Use the innerText property to set the content.
- Use the innerHTML property to set the content.
- Use a library like jQuery to sanitize input data.
- Use textContent property to set the content.
To prevent script injection attacks, it's crucial to use the textContent property to set content dynamically. Unlike innerHTML, which parses and executes scripts, textContent treats input as plain text, reducing the risk of script injection. Using libraries may help but doesn't guarantee security. innerText has limited browser support.
You are developing a function that needs to maintain state between calls without using global variables. Which JavaScript feature would you utilize to achieve this?
- Closures
- Prototypes
- Callbacks
- Promises
You can utilize closures in JavaScript to maintain state between function calls without relying on global variables. A closure is a function that has access to variables from its outer (enclosing) function's scope, even after the outer function has finished executing. This allows you to create private variables and maintain state within the closure function.
The switch statement in JavaScript uses _________ comparison to evaluate cases.
- Strict (===)
- Loose (==)
- Greater (>)
- Lesser (<)
The switch statement in JavaScript uses strict (===) comparison to evaluate cases. This means that not only the value but also the data type must match for a case to be executed. This ensures accuracy when comparing values in a switch statement.
When using the new keyword to create an object, what kind of function must you use?
- Regular Function Declaration
- Arrow Function
- Constructor Function
- Prototype Function
When using the new keyword to create an object, you must use a Constructor Function. Constructor functions are used to create and initialize objects. They are invoked with the new keyword and often set object properties and methods within the constructor. Arrow functions are not suitable because they don't have their own this context.
Which method would you use to add a new property to an object after it has been created?
- Object.add()
- Object.append()
- Object.assign()
- Object.insert()
To add a new property to an existing object in JavaScript, you would typically use the Object.assign() method. This method allows you to merge properties from one or more source objects into a target object. It can be used to add or update properties in the target object.
What is the purpose of the this keyword inside a constructor function?
- Refers to the global object
- Refers to the parent object
- Refers to the current instance
- Refers to the next sibling
The this keyword inside a constructor function refers to the current instance of the object being created. It allows you to access and assign properties and methods to the instance being constructed, making it unique for each object created with the constructor. It does not refer to the global or parent object.
Which of the following is NOT an argument passed to an event listener when it is invoked?
- event
- target
- type
- timestamp
When an event listener is invoked, it receives an event object containing information about the event. It also has access to the target (the element that triggered the event) and type (the type of event). However, timestamp is not an argument passed to an event listener. It can be obtained using event.timeStamp.
A(n) _______ function returns a promise.
- Synchronous
- Callback
- Async
- Static
An Async function returns a promise implicitly. When you declare a function as async, it means the function will always return a promise, allowing you to use await inside it to handle asynchronous operations more cleanly.
The ________ method is used to parse a JSON string into a JavaScript object.
- toJSON()
- parseJSON()
- JSON.parse()
- stringToJSON()
The correct method to parse a JSON string into a JavaScript object is JSON.parse(). It takes a JSON string as input and returns a JavaScript object. The other options (toJSON(), parseJSON(), stringToJSON()) are not valid JSON parsing methods.
What is the primary use of the switch statement in JavaScript?
- To declare variables
- To create loops
- To perform conditional branching
- To define functions
The primary use of the switch statement in JavaScript is to perform conditional branching. It allows you to execute different code blocks based on the value of an expression, making it a powerful tool for decision-making in your code.