Questions and Answers
- If you want to import just the Component from the React library, what syntax do you use?
- `import React.Component from 'react'`
- `import [ Component ] from 'react'`
- `import Component from 'react'`
- `import { Component } from 'react'`
- If a function component should always render the same way given the same props, what is a simple performance optimization available for it?
- Wrap it in the `React.memo` higher-order component.
- Implement the `useReducer` Hook.
- Implement the `useMemo` Hook.
- Implement the `shouldComponentUpdate` lifecycle method.
- How do you fix the syntax error that results from running this code?
- Wrap the object in parentheses.
- Call the function from another file.
- Add a return statement before the first curly brace.
- Replace the object with an array.
- If you see the following import in a file, what is being used for state management in the component?
- React Hooks
- stateful components
- math
- class components
- Using object literal enhancement, you can put values back into an object. When you log person to the console, what is the output?
- `{{name: "Rachel", age: 31}}`
- `{name: "Rachel", age: 31}`
- `{person: "Rachel", person: 31}}`
- `{person: {name: "Rachel", age: 31}}`
- What is the testing library most often associated with React?
- Mocha
- Chai
- Sinon
- Jest
- To get the first item from the array ("cooking") using array destructuring, how do you adjust this line?
- `const first = ["cooking", "art", "history"]`
- `const [] = ["cooking", "art", "history"]`
- `const [, first]["cooking", "art", "history"]`
- `const [first] = ["cooking", "art", "history"]`
- How do you handle passing through the component tree without having to pass props down manually at every level?
- React Send
- React Pinpoint
- React Router
- React Context
- What should the console read when the following code is run?
- Horse
- Cat
- Mouse
- undefined
- What is the name of the tool used to take JSX and turn it into createElement calls?
- JSX Editor
- ReactDOM
- Browser Buddy
- Babel
- Why might you use useReducer over useState in a React component?
- when you want to replace Redux
- when you need to manage more complex state in an app
- when you want to improve performance
- when you want to break your production app
- Which props from the props object is available to the component with the following syntax?
- any that have not changed
- all of them
- child props
- any that have changed
- Consider the following code from React Router. What do you call :id in the path prop?
- This is a route modal
- This is a route parameter
- This is a route splitter
- This is a route link
- If you created a component called Dish and rendered it to the DOM, what type of element would be rendered?
- `div`
- section
- component
- `h1`
- What does this React element look like given the following function? (Alternative: Given the following code, what does this React element look like?)
- `
What's happening?
` - `
What's happening?
` - `
What's happening?
` - `
What's happening?
`
- `
- What property do you need to add to the Suspense component in order to display a spinner or loading state?
- lazy
- loading
- fallback
- spinner
- What do you call the message wrapped in curly braces below?
- a JS function
- a JS element
- a JS expression
- a JSX wrapper
- What can you use to handle code splitting?
- `React.memo`
- `React.split`
- `React.lazy`
- `React.fallback`
- When do you use `useLayoutEffect`?
- to optimize for all devices
- to complete the update
- to change the layout of the screen
- when you need the browser to paint before the effect runs
- What is the difference between the click behaviors of these two buttons (assuming that this.handleClick is bound correctly)?
- Button A will not have access to the event object on click of the button.
- Button B will not fire the handler this.handleClick successfully.
- Button A will not fire the handler this.handleClick successfully.
- There is no difference.
- How do you destructure the properties that are sent to the Dish component?
- `function Dish([name, cookingTime]) { return
{name} {cookingTime}
; }` - `function Dish({name, cookingTime}) { return
{name} {cookingTime}
; }` - `function Dish(props) { return
{name} {cookingTime}
; }` - `function Dish(...props) { return
{name} {cookingTime}
; }`
- `function Dish([name, cookingTime]) { return
- When might you use `React.PureComponent`?
- when you do not want your component to have props
- when you have sibling components that need to be compared
- when you want a default implementation of `shouldComponentUpdate()`
- when you do not want your component to have state
- Why is it important to avoid copying the values of props into a component's state where possible?
- because you should never mutate state
- because `getDerivedStateFromProps()` is an unsafe method to use
- because you want to allow a component to update in response to changes in the props
- because you want to allow data to flow back up to the parent
- What is the children prop?
- a property that adds child components to state
- a property that lets you pass components as data to other components
- a property that lets you set an array as a property
- a property that lets you pass data to child elements
- Which attribute do you use to replace innerHTML in the browser DOM?
- injectHTML
- dangerouslySetInnerHTML
- weirdSetInnerHTML
- strangeHTML
- Which of these terms commonly describe React applications?
- declarative
- integrated
- closed
- imperative
- When using webpack, why would you need to use a loader?
- to put together physical file folders
- to preprocess files
- to load external data
- to load the website into everyone's phone
- A representation of a user interface that is kept in memory and is synced with the "real" DOM is called what?
- virtual DOM
- DOM
- virtual elements
- shadow DOM
- You have written the following code but nothing is rendering. How do you fix this problem?
- Add a render function.
- Change the curly braces to parentheses or add a return statement before the `h1` tag.
- Move the `h1` to another component.
- Surround the `h1` in a `div`.
- To create a constant in JavaScript, which keyword do you use?
- const
- let
- constant
- var
- What do you call a React component that catches JavaScript errors anywhere in the child component tree?
- error bosses
- error catchers
- error helpers
- error boundaries
- In which lifecycle method do you make requests for data in a class component?
- constructor
- componentDidMount
- componentWillReceiveProps
- componentWillMount
- React components are composed to create a user interface. How are components composed?
- by putting them in the same file
- by nesting components
- with webpack
- with code splitting
- All React components must act like **\_** with respect to their props.
- monads
- pure functions
- recursive functions
- higher-order functions
- What is `[e.target.id]` called in the following code snippet?
- a computed property name
- a set value
- a dynamic key
- a JSX code string
- What is the name of this component?
- Clock
- It does not have a name prop.
- React.Component
- Component
- What is sent to an `Array.map()` function?
- a callback function that is called once for each element in the array
- the name of another array to iterate over
- the number of times you want to call the function
- a string describing what the function should do
- Why is it a good idea to pass a function to `setState` instead of an object?
- It provides better encapsulation.
- It makes sure that the object is not mutated.
- It automatically updates a component.
- `setState` is asynchronous and might result in out of sync values.
- What package contains the render() function that renders a React element tree to the DOM?
- `React`
- `ReactDOM`
- `Render`
- `DOM`
- How do you set a default value for an uncontrolled form field?
- Use the `value` property.
- Use the `defaultValue` property.
- Use the `default` property.
- It assigns one automatically.
- What do you need to change about this code to get it to run?
- Add quotes around the return value
- Remove `this`
- Remove the render method
- Capitalize `clock`
- Which Hook could be used to update the document's title?
- `useEffect(function updateTitle() { document.title = name + ' ' + lastname; });`
- `useEffect(() => { title = name + ' ' + lastname; });`
- `useEffect(function updateTitle() { name + ' ' + lastname; });`
- `useEffect(function updateTitle() { title = name + ' ' + lastname; });`
- What can you use to wrap Component imports in order to load them lazily?
- `React.fallback`
- `React.split`
- `React.lazy`
- `React.memo`
- How do you invoke setDone only when component mounts, using hooks?
- `useEffect(() => { setDone(true); });`
- `useEffect(() => { setDone(true); }, []);`
- `useEffect(() => { setDone(true); }, [setDone]);`
- `useEffect(() => { setDone(true); }, [done, setDone]);`
- Currently, `handleClick` is being called instead of passed as a reference. How do you fix this?
- ``
- ``
- ``
- ``
- Which answer best describes a function component?
- A function component is the same as a class component.
- A function component accepts a single props object and returns a React element.
- A function component is the only way to create a component.
- A function component is required to create a React component.
- Which library does the `fetch()` function come from?
- FetchJS
- ReactDOM
- No library. `fetch()` is supported by most browsers.
- React
- What will happen when this useEffect Hook is executed, assuming name is not already equal to John?
- It will cause an error immediately.
- It will execute the code inside the function, but only after waiting to ensure that no other component is accessing the name variable.
- It will update the value of name once and not run again until name is changed from the outside.
- It will cause an infinite loop.
- Which choice will not cause a React component to rerender?
- if the component calls `this.setState(...)`
- the value of one of the component's props changes
- if the component calls `this.forceUpdate()`
- one of the component's siblings rerenders
- You have created a new method in a class component called handleClick, but it is not working. Which code is missing?
- `this.handleClick.bind(this);`
- `props.bind(handleClick);`
- `this.handleClick.bind();`
- `this.handleClick = this.handleClick.bind(this);`
- React does not render two sibling elements unless they are wrapped in a fragment. Below is one way to render a fragment. What is the shorthand for this?
- A
- B
- C
- D
- If you wanted to display the count state value in the component, what do you need to add to the curly braces in the `h1`?
- this.state.count
- count
- state
- state.count
- Per the following code, when is the Hello component displayed?
- never
- when `isLoggedIn` is true
- when a user logs in
- when the Hello function is called
- In the following code block, what type is orderNumber?
- string
- boolean
- object
- number
- You have added a style property to the `h1` but there is an unexpected token error when it runs. How do you fix this?
- `const element =
Hi
;` - `const element =
Hi
;` - `const element =
Hi
;` - `const element =
Hi
;`
- `const element =
- Which function is used to update state variables in a React class component?
- `replaceState`
- `refreshState`
- `updateState`
- `setState`
- Consider the following component. What is the default color for the star?
- black
- red
- grey
- white
- What is the difference between the click behaviors of these two buttons(assuming that this.handleClick is bound correctly)
- `Button A will not have access to the event object on click of the button`
- `Button A will not fire the handler this.handleClick successfully`
- `There is no difference`
- `Button B will not fire the handler this.handleClick successfully`
- How would you add to this code, from React Router, to display a component called About?
- A
- B
- C
- D
- Which class-based component is equivalent to this function component?
- A
- B
- C
- D
- Give the code below, what does the second argument that is sent to the render function describe?
- where the React element should be added to the DOM
- where to call the function
- where the root component is
- where to create a new JavaScript file
- Why should you use React Router's Link component instead of a basic `` tag in React?
- The link component allows the user to use the browser's `Back` button.
- There is no difference--the `Link` component is just another name for the `` tag.
- The `` tag will cause an error when used in React.
- The `` tag triggers a full page reload, while the `Link` component does not.
- What is the first argument, `x`, that is sent to the `createElement` function?
- the element that should be created
- the order in which this element should be placed on the page
- the properties of the element
- data that should be displayed in the element
- Which class-based lifecycle method would be called at the same time as this effect Hook?
- componentWillUnmount
- componentDidMount
- render
- componentDidUpdate
- What is the name of this component?
- Comp
- h1
- React.Component
- Component
- When using a portal, what is the first argument?
- the current state
- the element to render
- the App component
- the page
- What is `setCount`?
- the initial state value
- a variable
- a state object
- a function to update the state
- What is the use of map function below?
- gives a map of all the entries in database
- returns a heading tag for every entry in the database containing it's data
- returns one heading tag for all the entries in database
- checks which entry in the database is suitable for heading tag
- Describe what is happening in this code?
- It is creating a new object that contains the same name property as the person object.
- It is assigning the value of the person object's firstName property to a constant called name.
- It is retrieving the value of person.name.firstName.
- It is assigning the value of the person object's name property to a constant called firstName.
- What is wrong with this code?
- React components cannot be defined using functions.
- React does not allow components to return more than one element.
- The component needs to use the return keyword.
- String literals must be surrounded by quotes.
- When using a portal, what is the second argument?
- the App component
- the page
- the current state
- the DOM element that exists outside of the parent component
- Given this code, what will be printed in the `
` tag?
- It will produce an error saying "cannot read property "length" of undefined."
- 1
- undefined
- 2
- What is this pattern called?
- object destructuring
- array destructuring
- spread operating
- code pushing
- What is the first file loaded by the browser in a basic React project?
- src/App.js
- src/index.js
- public/manifest.json
- public/index.html
- The code below is rendering nothing, and there is an error that says "ReactDOM is not defined." How do you fix this issue?
- `render(element, document.getElementById("root"));`
- `ReactDOM(element, document.getElementById("root"));`
- `renderDOM(element, document.getElementById("root"));`
- `DOM(element, document.getElementById("root"));`
- In this component, how do you display whether the user was logged in or not?
- `The user is loggedIn ? logged in : not logged in.`
- Write a function to check the login status.
- `The user is {isLoggedIn = "no"}.`
- `The user is {isLoggedIn ? "logged in." : "not logged in"}.`
- You are rendering a list with React when this warning appears in the console: "Warning: Each child in a list should have a unique 'key' prop." How do you fix this issue?
- Pass the name of each item as its key.
- Add a key prop with the same value to each item the list.
- Clear the console warnings.
- When iterating over the list items, add a unique property to each list item.
- How would you generate the boilerplate code for a new app that you are building to collect underpants?
- npm create-react-app collect-underpants
- npx start-app collect-underpants
- react new collect-underpants
- npx create-react-app collect-underpants
- Add the code that will fire the photon torpedoes when the button is clicked.
- ``
- ``
- ``
- ``
- What is the process of deciding whether an update is necessary?
- shadow DOM
- fiber
- reconciliation
- setting state
- React is an open-source project but is maintained by which company?
- Intuit
- Snapchat
- What command can you use to generate a React project?
- react-starter
- create-react-app
- react-gen
- react-start
- What is the browser extension called that React developers use to debug applications?
- React Developer Tools
- React Tooling Add-on
- React Codewatch
- React Debug
- Which tool is not part of Create React App?
- React
- jQuery
- webpack
- ReactDOM
- What is the JavaScript syntax extension that is commonly used to create React elements?
- HTML
- JavaScriptX
- JSX
- React JavaScript
- How might you check property types without using Flow or TypeScript?
- Check Manually.
- Use `prop-helper`.
- use `prop-types`.
- user `checker-types`.
- How do you add an id of heading to the following h1 element?
- `let dish =
Mac and Cheese
;` - `let dish =
Mac and Cheese
;` - `let dish =
Mac and Cheese
;` - `let dish =
Mac and Cheese
;`
- `let dish =
- What value of button will allow you to pass the name of the person to be hugged?
- `;`
- `;`
- `;`
- `;`
- What syntax do you use to create a component in React?
- a generator
- a function or a class
- a service worker
- a tag
- You want to disable a button so that it does not emit any events onClick. Which prop do you use to acomplish this?
- onBlur
- onPress
- defaultValue
- disabled
- In this function, which is the best way to describe the Dish component?
- child component
- parent component
- nested component
- sibling component
- When does the componentDidMount function fire?
- right after the component is added to the DOM
- before the component is added to the DOM
- right after the component is updated
- right after an API call
- What might you use webpack for?
- to fetch remote dependencies used by your app
- to split your app into smaller chunks that can be more easily loaded by the browser
- to format your code so that it is more readable
- to ensure your app is not vulnerable to code injection
- When using the React Developer Tools Chrome extension, what does it mean if the React icon is red?
- You are using the development build of React.
- You are using the production build of React.
- You are using webpack.
- You are using Create React App.
- How would you modify the constructor to fix this erroe: "ReferenceError: Must call super constructor in derived class before accessing 'this'..."?
- render(props);
- super(props);
- super(this);
- this.super();
- Which language can you not use with React?
- Swift.
- JSX.
- Javascipt.
- TypeScript.
- This code is part of an app that collects Pokemon. How would you print the list of the ones collected so far?
- console.log(props.pokeDex);
- console.log(this.props.pokeDex);
- console.log(pokeDex);
- console.log(this.state.pokeDex);
- What would be the result of running this code?
- null
- 3
- 0
- undefined
- Why might you use a React.ref?
- to refer to another JS file
- to bind the function
- to call a function
- to directly access the DOM node
- What pattern is being used in this code?
- function defaults
- array destructuring
- PRPL pattern
- destructuring assignment