Considering the following code snippet, which statements are true about components in Vue?
Text of the picture (copyable)
```
childComponent.$emit('update', 5)
```
Parent can listen with @update
Parent receives payload via $event
Child can directly modify parent state
$emit triggers a DOM event
Q3MCQ3 marks
Consider the following JavaScript code snippet.
What will be printed on the console?
Text of the picture (copyable)
```javascript
Promise.resolve(1)
.then(v => { throw v + 1 })
.catch(e => e * 2)
.then(console.log)
```
2
4
Undefined
Error
Q4MCQ2 marks
Which of the following is considered a good practice for securing user authentication in a web application?
Storing passwords as plain text in the database for quick lookup
Using hashing algorithms like "bcrypt" or "Argon2" to store passwords securely
Including user passwords directly in SQL queries for verification
All of these
Q5MCQ2 marks
In the following code snippet, which values should replace option1 and option2 so that the cookie is sent only over HTTPS and is restricted from cross-site requests?
You are working in VS Code terminal with Git CLI. You are currently on branch appdev2, and you want to merge the latest changes from the main branch into appdev2. Which of the following command sequences correctly performs the merge with a commit?
text
```
git checkout main
git merge appdev2
git commit -m "Merged main into appdev2"
```
text
```
git merge main
git commit -m "Merged main into appdev2"
```
text
```
git checkout appdev2
git pull origin main
git commit -m "Pulled changes from main into appdev2"
```
text
```
git merge appdev2 main
git commit -m "Merged main into appdev2"
```
Q7MCQ3 marks
When comparing Redis with a typical API data store (like a relational database accessed through REST APIs), which of the following statements is true?
Redis can only store strings, unlike API data stores which can handle complex structures.
Redis is an in-memory data structure store, often used as a cache or message broker to complement API-based data stores.
Redis is a relational database and queries data using SQL, just like an API data store.
Redis is slower than API-based databases because it stores everything in memory.
Q8MCQ3 marks
How can you stop a Cross-Site Scripting (XSS) attack?
Backend validation of user input and make sure any user-provided text is not executed as code.
Store authentication token or jwt in cookies.
Use v-html to show user generated data.
Send cookies with every request to the backend.
Q9MSQ2 marksselect all that apply
Which of the following describe Redis features correctly?
In-memory database
Can support publish-subscribe (pub/sub)
Can be used as Celery result backend
Requires SQL to query
Q10MCQ2 marks
Which of the following is true about Vuex state?
It should be modified only through mutations
It should be modified only through actions
It cannot contain nested objects
It should be modified by getters
Q11MCQ2 marks
What is the purpose of Redis in a Celery-based system?
To automatically retry failed tasks
To execute tasks in parallel
To return computed results in JSON format
To store scheduled tasks and serve as a message broker
Q12MCQ3 marks
What happens to the fetch call when it gets a 404 status code (page not found)?
text
Promise rejects automatically
text
Promise resolves and `response.ok = true`
text
Promise resolves and `response.ok = false`
text
Promise stays as pending
Q13MCQ4 marks
Consider the following JavaScript code.
What will be the output?
Consider the following Vue Router setup and HTML.
Suppose the webpage is served at http://127.0.0.1:5000. A user visits the URL http://127.0.0.1:5000/#/user/10/orders. What will be rendered on the browser?
Nothing is rendered because sibling routes overwrite the parent route.
Q17MCQ3 marks
Consider the following JavaScript code snippet where a web application manages user preferences using localStorage. A user opens the application, sets their theme preference to "dark", refreshes the page once, closes the browser tab, and opens a new tab to reload the page. What will be the behavior of the theme preference?
The theme will be lost because closing the browser tab clears localStorage
The theme will be preserved as "dark" because localStorage persists across browser sessions
The theme will be undefined because localStorage is cleared on refresh
The theme will be reset to "light" when a new tab is opened
Q18MCQ2 marks
A developer creates a Vue component using both v-if and v-show directives on different elements with initially false conditions. Later, the conditions are changed to true. What is the key difference in how these two directives handle the DOM?
v-if removes the element from DOM when false, v-show only changes CSS display property
v-show removes the element from DOM when false, v-if only changes CSS display property
Both v-if and v-show re-mount the element and re-run lifecycle hooks
Both directives are identical in their functionality; they just have different naming conventions
Q19MCQ3 marks
A Promise chain is created as follows. The first Promise resolves with a string, which is then processed through multiple .then() handlers. What will be logged to the console?
A JavaScript object is created and then assigned to another variable. Modifications are made through both variables. What will be the final state of the original object?
Which of the following statements about the "this" keyword in JavaScript are correct?
In a regular function, "this" is always bound to the global object (window in browsers)
In an arrow function, "this" is inherited from the enclosing lexical scope
The .call() method can be used to explicitly set the context of "this" in a function
In a method called on an object, "this" always refers to that object regardless of how the function is defined
Q22MCQ3 marks
A Vue Router application uses lazy-loaded route components. When a user navigates to a route with a dynamic parameter (e.g., /product/:id), and the computed property depends on this route parameter, what could be a potential issue if the component is not properly handling asynchronous operations?
The component will throw a critical error and crash the application
The computed property will return undefined because the component hasn't mounted yet
The route parameter will not be accessible in the computed property
The component will display data from the previously loaded route
Q23MCQ3 marks
A developer uses sessionStorage to store authentication tokens in a web application. The user logs in, the token is stored, and then they close the browser window completely. When they reopen the browser later, what will happen? Code:
The token will be preserved and available in the new browser session.
The token will be cleared because sessionStorage is cleared when the browser is closed.
The token will be partially available but require re-authentication.
The token will move to localStorage automatically.
Q24MCQ5 marks
A developer creates a Vue component with prototype chain inspection. The component uses class-based inheritance with lifecycle hooks. Consider the following scenario. Code:
What will be the output on the browser's console?
In a web application using webhooks and Redis for real-time data synchronization: Scenario: An order management system where: • When an order is created, a webhook is sent to a notification service • Redis stores the current order cache • Multiple concurrent requests update the cache Which statements about this architecture are true?
Webhooks guarantee that the notification service will process events in the exact order they were triggered
Redis is suitable for this use case because it's an in-memory data structure store that provides fast access to cached data
The webhook will automatically retry if the notification service is temporarily unavailable
Webhooks use HTTP POST requests to communicate events asynchronously
Comprehension passage - the questions below it refer to this
Consider the Vue application.
Based on the above data, answer the given subquestions.
Q26MCQ3 marks
What happens when the user clicks the calculate button?
expensive() runs again because the DOM updates
expensive() does NOT run again because its dependencies did not change
Vue recomputes all computed properties on any state change
Nothing is displayed
Q27MCQ3 marks
Under which condition will the computed property expensive() re-run?
When this.time changes
The user clicks anywhere on the DOM
Either this.a or this.b changes
When Date.now() changes
Q28MSQ3 marksselect all that apply
What are the benefits of computed caching in Vue?
Reduced CPU usage
Faster rendering
Avoids unnecessary recomputation
Makes all computations asynchronous
Comprehension passage - the questions below it refer to this
Consider the following Vue 2 (CDN) code. html code:
script:
Based on the above data, answer the given subquestions.
Q29MCQ5 marks
What happens when the user clicks on "User 2" after initially opening "User 1"?
text
The route changes to /user/2 but the userId in data does not update.
text
The watcher updates `userId` to "2", and the `<p>` displays it instantly.
text
The `router-view` still shows User 1 because watchers don't re-render components.
text
An error occurs because `$route.params.id` cannot be watched.
Q30MCQ5 marks
Why is the watcher on $route.params.id necessary in this code?
Without it, the userId in data would never change when the route changes.
It is required because Vue Router does not automatically update component data.
It prevents the component from being destroyed and recreated on every navigation.
Both Without it, the userId in data would never change when the route changes and It is required because Vue Router does not automatically update component data are correct.
Comprehension passage - the questions below it refer to this
Consider the following Vue.js application with two different route scenarios and a component that uses reactive data binding: Scenario: An e-commerce application where: • Product list component displays products filtered by category • Category changes through router parameters: /products/:category • When a user navigates from /products/electronics to /products/books, the product list should update
Based on the above data, answer the given subquestions.
Q31MCQ5 marks
What will be rendered when the user first navigates to /products/electronics?
An empty array because displayedProducts is initialized as null
All three products because the watch handler hasn't been triggered yet
Only the Laptop and Phone (both electronics)
The data will show an error because the category doesn't exist in the array
Q32MCQ4 marks
When the user navigates from /products/electronics to /products/books, what will happen and why?
The computed property will not update because it's being used in a watch handler
The computed property will automatically re-evaluate because the route parameter dependency changed
The displayedProducts variable will update, but the computed property will display stale data
Both the computed property and displayedProducts will update to show books