为新的应用程序或网站选择正确的技术变得越来越困难。 React 是发展最快的 Javascript 框架之一。随着 JavaScript 技术在行业中站稳脚跟,对 React 认证的需求一直在稳步上升。 React 是世界各地前端开发人员的明显赢家,因为它的学习曲线短、可重用的组件和干净的抽象。为了帮助您准备面试,我们整理了一些最常见的 React 面试问题和答案的列表。
\ 让我们来看看五个最常见的 React 面试问题:
1. React 的特点是什么?
| JSX:JSX 是一个 JavaScript 语法扩展。它是 React 中用于定义用户界面所需外观的术语。借助 JSX 语言扩展,可以在与 JavaScript 代码相同的文件中编写 HTML 结构。 | | |—-|—-| |组件:单个 React 应用程序中有许多组件,因此了解它们是什么以及它们如何协同工作很重要。它将用户界面分成可以相互独立地重复使用和处理的组件。 | | |虚拟 DOM :在 React 中,虚拟 DOM 是存储在内存中的实际 DOM 的轻量级副本。与更新 DOM 中的每一项不同,虚拟 DOM 一次只更新一个对象。 | | |单向数据绑定:在 React 中,单向数据绑定确保一切都是模块化和快速的。 React 应用程序的单向数据流需要在父组件内嵌套子组件。 | | |高性能:为了让事情顺利运行,React 只更新已更改的部分。因此,Web 应用程序的运行速度大大加快。 | |
2. Real DOM 和 Virtual DOM 的主要区别是什么? (真实 DOM 与虚拟 DOM)
|真实 DOM |虚拟DOM | |:—|—-| |需要一段时间才能更新。 |它在更新方面更具响应性。 | |可以直接从命令行进行 HTML 更改。 |无法直接更改 HTML。 | |如果元素的数据发生变化,则会创建一个新的 DOM。 |如果元素发生更改,则 JSX 会更新。 | |为了操作 DOM,这个过程相当耗时。 |使用 DOM 相当简单。 | |记忆被浪费了。 |内存没有浪费。 |
3. React 的 ES6 语法与 ES5 在语法上有何不同?
在比较 ES5 和 ES6 时,更新了以下语法特性:
\
-
导入与要求
-
出口与出口
-
组件和功能
-
道具
-
状态
\
导入与要求
ES5
var React = require('react');
ES6
import React from 'react';
出口与出口
ES5 module.exports = Component;
ES6 export default Component;
组件和功能
// ES5 Component var MyComponent = React.createClass({ render: function () { return <h3>Hello Edureka!</h3>; }, }) // ES6 Function class MyComponent extends React.Component { render() { return <h3>Hello Edureka!</h3> } }
道具
// ES5 var App = React.createClass({ propTypes: { name: React.PropTypes.string }, render: function () { return <h3>Hello, {this.props.name}!</h3> }, }) // ES6 class App extends React.Component { render() { return <h3>Hello, {this.props.name}!</h3> } }
状态
// ES5 var App = React.createClass({ getInitialState: function () { return { name: 'world' } }, render: function () { return <h3>Hello, {this.state.name}!</h3> }, }) // ES6 class App extends React.Component { constructor() { super() this.state = { name: 'world' } } render() { return <h3>Hello, {this.state.name}!</h3> } }
4. 列出在你的文章中使用 React 的一些最重要的好处。
React 有许多显着的好处,包括:
- 它提高了程序的速度和响应能力。
- 它适用于客户端和服务器。
- JSX 提高了代码的可读性
- 使用 React,可以轻松集成 Meteor 和 Angular 等其他框架。
- 在 React 的帮助下编写 UI 测试用例变得轻而易举。
5、浏览器不支持JSX的原因是什么?
浏览器只支持 JavaScript 对象,但 JSX 不是其中之一。出于这个原因,JSX 文件在发送到浏览器之前必须首先转换为像 Babel 这样的 JavaScript 对象。
\
原文: https://hackernoon.com/top-5-interview-questions-for-junior-react-developers-in-2022?source=rss