wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

tổng hợp kiến thức React

Total questions: 44

Worksheet time: 44mins

Name
Class
Date
1.

Đoạn code trên có ý nghĩa như thế nào

a)

Loại bỏ thẻ h1 khỏi thẻ div có it là root

b)

tạo thẻ h1 có nội dung "lớp JavaWeb - React" và gắn vào thẻ div có id là root

c)

tọa thẻ heading có nội dung "lớp JavaWeb - React" và gắn vào thẻ div có id là root

d)

đoạn code lỗi

2.

Phát biểu nào sau đây đúng

a)

ReactJs là một library của javascript

b)

ReactJS là một framework của javascript

c)

ReactJS là một ngôn ngữ độc lập

d)

tất cả đều đúng

3.

Phát biểu nào sau đây đúng

a)

{ title } và 'React' đều là children của h1React

b)

{ title } là prop và 'React' là children của h1React

c)

'h1' là childrend của h1React

d)

'h1', { tittle } và 'React' đều là prop của h1React

4.

Khởi tạo dự án React + typescript mới bằng câu lệnh? điền vào dấu ....
npx ............ *tênproject --template typescript

(a)  

5.

SPA là viết tắt của?

(a)  

6.

MPA là viết tắt của?

(a)  

7.

ý nào sau đây đúng khi so sánh giữa SPA và MPA

a)

MPA thân thiện với SEO hơn SPA

b)

MPA tốc độ nhanh hơn khi sử dụng

c)

SPA có thể không cần đến javascript

d)

MPA có thể không cần đến javascript

8.

đoạn code trên có ý nghĩa gì?

a)

tạo một DOM element h1, với attribute title: 'Lớp JavaWeb' và nội dung 'React'

b)

tạo một React element h1, với attribute title: 'Lớp JavaWeb' và nội dung 'React'

c)

sửa tittle của sửa sổ trang web thành Lớp JavaWeb

d)

đoạn code bị lỗi

9.

JSX/TSX là gì?

a)

TSX giống với JSX

b)

JSX là javascript XLM/HTML là một file javascript có hỗ trợ viết html

c)

TSX là mở rộng của JSX

10.

phát biểu đúng về biểu thức trong JSX/TSX

a)

nhúng biểu thức javascript vào đoạn code trả về DOM element bằng cách viết nó vào trong cặp ngoặc { }

b)

nhúng biểu thức javascript vào đoạn code trả về React element bằng cách viết nó vào trong cặp ngoặc { }

c)

nhúng biểu thức javascript vào đoạn code trả về React element bằng cách viết nó vào trong cặp ngoặc ( )

d)

Tất cả đều sai

11.

Phát biểu nào sau đây sai về atribute trong JSX

a)

Viết thuộc tính cho thẻ giống hệt như đối với html

b)

Viết thuộc tính cho thẻ tương tự như đối với html, nhưng phải tuân theo bộ quy chuẩn của JSX

c)

<h1 className=“header”>heading</h1>

d)

<h1 class=“header”>heading</h1>

12.

Thông thường khi muốn render ra 1 danh sách các element từ một mảng thì chúng ta sẽ sử dụng phương thức nào.

a)

map

b)

forEach

c)

reduce

d)

filter

13.

component là gì?

a)

hàm xử lý javascript/typescript và trả về react element

b)

hàm xử lý javascript/typescript và trả về DOM element

c)

hàm xử lý javascript/typescript và trả về html

d)

hàm xử lý javascript/typescript và không trả về gì

14.

Tại sao phải chia component?

chọn câu trả lời chính xác nhất

a)

Cấu trúc code rõ ràng

b)

dự án React bắt buộc phải chia component

c)

không có ưu điểm gì

d)

Cấu trúc code rõ ràng và tận dụng được tính tái sử dụng của component

15.

phân loại component

a)

chỉ có function component

b)

function component và class component

c)

chỉ có class component

d)

tất cả đều sai

16.

cách đặt tên component nào sau đây đúng

a)

Mycomponent

b)

MyComponent

c)

My_Component

d)

tất cả đều đúng

17.

Ý kiến nào sau đây đúng nhất khi nói về props?

a)

Props thể hiện trạng thái dữ liệu của component, khi thay đổi props thì component sẽ được re-render

b)

Props dùng để truyền dữ liệu từ component con lên component cha

c)

Props dùng để truyền dữ liệu từ component cha xuống component con, tương tự như cách truyền đối số khi gọi hàm.

18.

cách truyền prop nào sau đây sai

a)

<MyComponent imageUrl="http://url" />

b)

<MyComponent imageUrl={"http://url"} />

c)

const imageUrl = "http://url"

<MyComponent imageUrl={imageUrl}/>

d)

<MyComponent imageUrl=http://url />

19.

<MyComponent imageUrl/>

ý nghĩa của đoạn code trên? chọn câu trả lời đúng nhất

a)

code bị lỗi

b)

imageUrl nhận kiểu boolean

c)

imageUrl nhận kiểu boolean và giá trị là true

d)

imageUrl nhận kiểu boolean và giá trị là false

20.

json-server --watch db.json --port 3001

ý nghĩa đoạn script trên? chọn câu trả lời đúng nhất

a)

khởi chạy json-server tại port 3001 database là file db.json

b)

khởi chạy json-server với database là file db.json tại port 3001 và có chức năng tự động lắng nghe các request

c)

khởi chạy json-server với database là file db.json và có chức năng tự động lắng nghe các request

d)

mặc định khởi chạy json-server

21.

json-server --watch db.json --port 3001
ý nghĩa số 3001?

a)

mặc định khởi chạy json-server

b)

mặc định khởi chạy dự án react là port 3000, và json-server không được trùng port với dự án

c)

có thể thay đổi sang một số khác (ví dụ 3002)

d)

là thành phần bắt buộc khi khởi chạy json-server

22.

phát biểu đúng về prop children của component

a)

prop children có thể đổi tên

b)

<MyComponent> string literals </MyComponent>

<MyComponent> {expression} </MyComponent>

string literals/{expression} là children prop của YourComponent

c)

<ComponentA>

<ComponentB />

</ComponentA>

<ComponentB/> không phải là children prop của ComponentA

d)

<MyComponent prop1="string literals"

/>

<MyComponent> string literals </MyComponent>

2 cách truyền prop trên giống nhau

23.

phát biểu đúng về hooks

a)

hooks là các hàm được viết sẵn và được cung cấp bởi react

b)

hooks là các component được viết sẵn và được cung cấp bởi react

c)

hooks là các class được viết sẵn và được cung cấp bởi react

d)

tất cả đều sai

24.

khi click vào button "update" 1 lần thì state cars có giá trị thế nào

a)

["Bugatti", "Roll-Royce", "Maybach", "Lamborghini"]

b)

["Bugatti", "Roll-Royce", "Maybach", ["Lamborghini"]]

c)

["Lamborghini"]

d)

code bị lỗi

25.

cách sử dụng của useState

a)

const [state, setState] = useState(initialState)

b)

const [state, setState] = useState()

c)

useState(( ) => { } )

d)

tất cả đều đúng

26.

const [state, setState] = useState(initState)

chọn phát biểu sai

a)

initState là giá trị khởi tạo, được sử dụng lại mỗi khi component re-render

b)

setState là một hàm, dùng để sửa giá trị của state

c)

ban đầu khi khởi tạo useState, state sẽ được gán giá trị và kiểu giá trị của initState

d)

khi gọi setState, component re-render

27.

giá trị của state sau khi chạy đoạn code trên

a)

2

b)

1

c)

3

d)

4

28.

Giá trị của state sau khi chạy code trên

a)

2

b)

1

c)

3

d)

4

29.

const [state, setState] = useState(initState)

initState có thể nhận kiểu dữ liệu nào

a)

Array

b)

Object

c)

Number

d)

Boolean

e)

function

30.

const [state, setState] = useState(initState)

khi initState là function, thì giá trị của initState khi đó có thể là gì

a)

là function

b)

không truyền được function

c)

cái mà function trả về

d)

null

31.

hàm nào là pure function

a)

b)

c)

cả 2 đều đúng

d)

cả 2 đều sai

32.

cách sử dụng đúng với useEffect

a)

useEffect(callback)

b)

useEffect(callback, [ ])

c)

useEfffect(callback, [deps])

d)

useEfffect([deps])

33.

Callback luôn được gọi khi component mounted (re-render)

Callback sẽ được gọi khi component thêm elemenet vào DOM

các phát biểu trên đúng với:

a)

useEffect(callback, [ ])

b)

useEfffect(callback, [deps])

c)

useEffect(callback)

d)

tất cả đều sai

34.

thứ tự thực thi của useEffect(callback)

a)
  1. 1.component re-render.

  2. 2. update DOM

  3. 3. gọi callback trong useEffect

b)
  1. 1. component re-render.

  2. 2. gọi callback trong useEffect.

  3. 3. update DOM

c)
  1. 1. update DOM.

  2. 2. component re-render

  3. 3. gọi callback trong useEffect.

d)

tất cả đều sai

35.

điều gì sẽ xảy ra với component chứa đoạn code trên

a)

code chạy bình thường component re-render 1 lần

b)

code chạy bình thường nhưng component không re-render

c)

component bị re-render vô hạn

d)

code lỗi không chạy

36.

useEffect(callback, [ ])

chọn phát biểu đúng với callback trong trường hợp useEffect trên

a)

callback bị gọi 1 lần khi component mounted và bị gọi 1 lần mỗi khi component re-render

b)

callback gọi lại vô hạn và component re-render vô hạn

c)

callback bị gọi 1 lần khi component mounted và không bị gọi lại khi component re-render

d)

tất cả đều sai

37.

useEfffect(callback, [deps])

chọn phát biểu có thể đúng với callback trong trường hợp useEffect trên mỗi khi component re-render

a)

callback gọi lại 1 lần

b)

callback không bị gọi lại

c)

callback bị gọi lại khi deps thay đổi

d)

tất cả đều đúng

38.

cleanup function trong useEffect là bắt buộc?

a)

đúng

b)

sai

39.

phát biểu đúng về cleanup function trong useEffect

a)

luôn được gọi trước khi component unmount

b)

luôn được gọi sau khi component unmount

c)

thường sử dụng với mục đích gỡ bỏ đi những thành phần thừa trong callback khi component unmount

d)

thường sử dụng với mục đích gỡ bỏ đi những thành phần thừa trong component khi component unmount

40.

phát biểu đúng về useContext

a)

truyền thẳng dữ liệu từ component cha xuống component con không cần thông qua prop hay trung gian

b)

mọi component con đều có thể nhận được context từ component cha

c)

chỉ những component con được chỉ định mới có thể nhận được context từ component cha

d)

tất cả đều sai

41.

provider trong useContext

a)

không bắt buộc phải có

b)

có thể khai báo ở bất cứ đâu (bên ngoài hoặc bên trong component cha/con)

c)

thường là cấp cao nhất bọc bên ngoài component cha muốn truyển dữ liêu đi cho các component con

d)

tất cả đều đúng

42.

ôn tập destructuring, rest. Câu trả lời đúng cho đoạn code trên

a)

'default', 'val1', { b: 'val1', c: 'val2', d: 'val3' }

b)

undefined, 'val1', { b: 'val1', c: 'val2', d: 'val3' }

c)

'default', 'val1', { c: 'val2', d: 'val3' }

43.

Ôn tập spread. Câu trả lời đúng cho đoạn code trên

a)

[1, 2, 3]

b)

[[1, 2, 3], [2, 3]]

c)

[1, 2, 3, 2, 3]

d)

tất cả đều sai

44.

giá trị của event trong DOM là gì

a)

là một callback

b)

là một mảng

c)

là một chuỗi

d)

tất cả đều đúng