Bộ 5 - Bộ 30+ câu hỏi trắc nghiệm online Lập trình Web có đáp án. Cùng rèn luyện kiến thức ngay nhé.
1. Trong lập trình web, thuật ngữ 'RESTful API' đề cập đến điều gì?
A. Một loại cơ sở dữ liệu.
B. Một kiến trúc thiết kế API tuân theo các nguyên tắc của REST (Representational State Transfer).
C. Một công cụ để thiết kế giao diện người dùng.
D. Một ngôn ngữ lập trình.
2. Công nghệ nào sau đây thường được sử dụng để quản lý các phiên bản mã nguồn của một dự án web?
A. Git.
B. Chỉ HTML và CSS.
C. Chỉ PHP.
D. Chỉ SQL.
3. Thuật ngữ 'Progressive Web App' (PWA) đề cập đến loại ứng dụng web nào?
A. Ứng dụng web chỉ hoạt động trên máy tính để bàn.
B. Ứng dụng web cung cấp trải nghiệm tương tự như ứng dụng native, có thể cài đặt trên thiết bị và hoạt động ngoại tuyến.
C. Ứng dụng web chỉ sử dụng hình ảnh động và hiệu ứng phức tạp.
D. Ứng dụng web chỉ dành cho các trang web thương mại điện tử.
4. Trong lập trình web, 'DOM' (Document Object Model) là gì?
A. Một loại cơ sở dữ liệu.
B. Một giao diện lập trình cho phép các ngôn ngữ lập trình truy cập và thao tác với nội dung, cấu trúc và kiểu dáng của tài liệu HTML hoặc XML.
C. Một công cụ để thiết kế giao diện người dùng.
D. Một ngôn ngữ lập trình.
5. Sự khác biệt chính giữa 'cookie' và 'session' là gì?
A. 'Cookie' lưu trữ dữ liệu trên máy chủ, còn 'session' lưu trữ dữ liệu trên trình duyệt.
B. 'Session' lưu trữ dữ liệu trên máy chủ, còn 'cookie' lưu trữ dữ liệu trên trình duyệt.
C. Cả hai đều lưu trữ dữ liệu trên máy chủ.
D. Cả hai đều lưu trữ dữ liệu trên trình duyệt.
6. Trong ngữ cảnh của bảo mật web, SQL Injection là gì?
A. Một kỹ thuật để tăng tốc độ truy vấn cơ sở dữ liệu.
B. Một loại tấn công cho phép kẻ tấn công chèn mã SQL độc hại vào các truy vấn cơ sở dữ liệu.
C. Một phương pháp để mã hóa dữ liệu trong cơ sở dữ liệu.
D. Một công cụ để quản lý cơ sở dữ liệu.
7. Công nghệ nào sau đây thường được sử dụng để tạo các hiệu ứng động và tương tác trên trang web?
A. Chỉ HTML.
B. JavaScript.
C. Chỉ CSS.
D. Chỉ SQL.
8. Trong lập trình web, thuật ngữ 'Callback function' đề cập đến điều gì?
A. Một hàm được gọi tự động khi trang web được tải.
B. Một hàm được truyền như một đối số cho một hàm khác và được thực thi sau khi hàm đó hoàn thành.
C. Một hàm được sử dụng để xử lý lỗi.
D. Một hàm được sử dụng để tạo hiệu ứng động.
9. Điểm khác biệt chính giữa 'localStorage' và 'sessionStorage' trong JavaScript là gì?
A. 'localStorage' lưu trữ dữ liệu vĩnh viễn, trong khi 'sessionStorage' chỉ lưu trữ dữ liệu trong một phiên làm việc.
B. 'sessionStorage' lưu trữ dữ liệu vĩnh viễn, trong khi 'localStorage' chỉ lưu trữ dữ liệu trong một phiên làm việc.
C. Cả hai đều lưu trữ dữ liệu vĩnh viễn.
D. Cả hai đều chỉ lưu trữ dữ liệu trong một phiên làm việc.
10. Thuật ngữ 'API' (Application Programming Interface) có nghĩa là gì trong ngữ cảnh của lập trình web?
A. Một loại ngôn ngữ lập trình mới.
B. Một giao diện cho phép các ứng dụng khác nhau giao tiếp và trao đổi dữ liệu với nhau.
C. Một phương pháp để bảo mật trang web.
D. Một công cụ để thiết kế giao diện người dùng.
11. Trong lập trình web, CORS (Cross-Origin Resource Sharing) là gì?
A. Một kỹ thuật để tối ưu hóa hình ảnh trên trang web.
B. Một cơ chế bảo mật trình duyệt cho phép hoặc từ chối các yêu cầu HTTP từ một nguồn gốc (origin) khác.
C. Một phương pháp để tạo hiệu ứng động cho trang web.
D. Một công cụ để quản lý cơ sở dữ liệu.
12. Phương pháp nào sau đây giúp cải thiện khả năng truy cập (accessibility) của một trang web cho người dùng khuyết tật?
A. Sử dụng nhiều hình ảnh động.
B. Cung cấp văn bản thay thế (alt text) cho tất cả hình ảnh.
C. Sử dụng màu sắc tương phản thấp.
D. Sử dụng phông chữ quá nhỏ.
13. Trong lập trình web, 'JSON Web Token' (JWT) là gì?
A. Một loại cơ sở dữ liệu.
B. Một tiêu chuẩn mở dựa trên JSON để tạo ra các token truy cập an toàn.
C. Một công cụ để thiết kế giao diện người dùng.
D. Một ngôn ngữ lập trình.
14. Sự khác biệt chính giữa phương thức GET và POST trong giao thức HTTP là gì?
A. GET được sử dụng để lấy dữ liệu từ máy chủ, trong khi POST được sử dụng để gửi dữ liệu lên máy chủ.
B. GET nhanh hơn POST.
C. POST an toàn hơn GET.
D. GET có thể gửi nhiều dữ liệu hơn POST.
15. Trong lập trình web, 'viewport' là gì?
A. Một loại phông chữ.
B. Khu vực hiển thị trang web trên thiết bị của người dùng.
C. Một công cụ để kiểm tra bảo mật trang web.
D. Một ngôn ngữ lập trình.
16. Trong ngữ cảnh của bảo mật web, Cross-Site Scripting (XSS) là gì?
A. Một kỹ thuật để tăng tốc độ tải trang web.
B. Một loại tấn công cho phép kẻ tấn công chèn mã độc hại vào trang web mà người dùng khác xem.
C. Một phương pháp để mã hóa dữ liệu truyền qua mạng.
D. Một công cụ để kiểm tra tính tương thích của trang web trên các trình duyệt khác nhau.
17. Trong ngữ cảnh của bảo mật web, CSRF (Cross-Site Request Forgery) là gì?
A. Một kỹ thuật để tăng tốc độ tải trang web.
B. Một loại tấn công cho phép kẻ tấn công thực hiện các hành động thay mặt người dùng mà không được phép của họ.
C. Một phương pháp để mã hóa dữ liệu truyền qua mạng.
D. Một công cụ để kiểm tra tính tương thích của trang web trên các trình duyệt khác nhau.
18. CDN (Content Delivery Network) được sử dụng để làm gì trong phát triển web?
A. Để lưu trữ cơ sở dữ liệu của trang web.
B. Để phân phối nội dung tĩnh (ví dụ: hình ảnh, CSS, JavaScript) từ các máy chủ gần người dùng hơn, giúp tăng tốc độ tải trang.
C. Để thực hiện các phép toán phức tạp trên máy chủ.
D. Để quản lý phiên làm việc của người dùng.
19. Công nghệ nào sau đây thường được sử dụng để quản lý các phụ thuộc (dependencies) trong một dự án JavaScript?
A. npm (Node Package Manager) hoặc Yarn.
B. Chỉ HTML và CSS.
C. Chỉ PHP.
D. Chỉ SQL.
20. Phương pháp nào sau đây giúp cải thiện hiệu suất tải trang web bằng cách giảm số lượng yêu cầu HTTP?
A. Sử dụng nhiều hình ảnh động.
B. Kết hợp nhiều tệp CSS và JavaScript thành một tệp duy nhất.
C. Sử dụng nhiều phông chữ khác nhau.
D. Sử dụng nhiều bảng (tables) trong HTML.
21. Cơ chế nào sau đây được sử dụng để thực hiện các yêu cầu không đồng bộ từ trình duyệt đến máy chủ, cho phép cập nhật một phần trang web mà không cần tải lại toàn bộ trang?
A. AJAX (Asynchronous JavaScript and XML).
B. Cookies.
C. CSS.
D. HTML.
22. Trong lập trình web, 'WebSockets' là gì?
A. Một loại cơ sở dữ liệu.
B. Một giao thức truyền thông hai chiều, cho phép máy chủ và trình duyệt giao tiếp liên tục mà không cần yêu cầu mới từ trình duyệt.
C. Một công cụ để thiết kế giao diện người dùng.
D. Một ngôn ngữ lập trình.
23. Sự khác biệt chính giữa '==' và '===' trong JavaScript là gì?
A. '==' so sánh giá trị, trong khi '===' so sánh cả giá trị và kiểu dữ liệu.
B. '===' so sánh giá trị, trong khi '==' so sánh cả giá trị và kiểu dữ liệu.
C. Cả hai đều so sánh giá trị.
D. Cả hai đều so sánh cả giá trị và kiểu dữ liệu.
24. Sự khác biệt chính giữa 'Array.map()' và 'Array.forEach()' trong JavaScript là gì?
A. 'Array.map()' tạo ra một mảng mới với kết quả của việc gọi một hàm cho mỗi phần tử trong mảng, trong khi 'Array.forEach()' chỉ thực thi một hàm cho mỗi phần tử mà không tạo ra mảng mới.
B. 'Array.forEach()' tạo ra một mảng mới với kết quả của việc gọi một hàm cho mỗi phần tử trong mảng, trong khi 'Array.map()' chỉ thực thi một hàm cho mỗi phần tử mà không tạo ra mảng mới.
C. Cả hai đều tạo ra một mảng mới.
D. Cả hai đều không tạo ra mảng mới.
25. Trong lập trình web, thuật ngữ 'middleware' thường được dùng để chỉ điều gì?
A. Phần mềm trung gian xử lý các yêu cầu và phản hồi HTTP trong ứng dụng web.
B. Một loại cơ sở dữ liệu.
C. Một công cụ để thiết kế giao diện người dùng.
D. Một ngôn ngữ lập trình.
26. Công nghệ nào sau đây thường được sử dụng để tạo các ứng dụng web một trang (Single Page Application - SPA)?
A. Chỉ HTML và CSS.
B. JavaScript Frameworks (ví dụ: React, Angular, Vue.js).
C. Chỉ PHP.
D. Chỉ SQL.
27. Trong ngữ cảnh của bảo mật web, 'Brute-force attack' là gì?
A. Một kỹ thuật để tăng tốc độ tải trang web.
B. Một loại tấn công cố gắng đoán mật khẩu hoặc khóa mã hóa bằng cách thử tất cả các khả năng.
C. Một phương pháp để mã hóa dữ liệu truyền qua mạng.
D. Một công cụ để kiểm tra tính tương thích của trang web trên các trình duyệt khác nhau.
28. Trong lập trình web, thuật ngữ 'responsive design' đề cập đến điều gì?
A. Thiết kế trang web chỉ dành cho thiết bị di động.
B. Thiết kế trang web tự động điều chỉnh bố cục và nội dung để phù hợp với các kích thước màn hình khác nhau.
C. Thiết kế trang web sử dụng hình ảnh động và hiệu ứng phức tạp.
D. Thiết kế trang web chỉ sử dụng màu sắc tươi sáng và bắt mắt.
29. Phương pháp nào sau đây thường được sử dụng để kiểm soát phiên làm việc của người dùng trên một trang web?
A. Cookies và Sessions.
B. Biến toàn cục (Global variables).
C. Hàm đệ quy (Recursive functions).
D. Mảng tĩnh (Static arrays).
30. Thuật ngữ 'SEO' (Search Engine Optimization) đề cập đến điều gì trong bối cảnh của phát triển web?
A. Quá trình thiết kế giao diện người dùng.
B. Quá trình tối ưu hóa trang web để cải thiện thứ hạng trên các công cụ tìm kiếm.
C. Quá trình kiểm tra bảo mật trang web.
D. Quá trình triển khai trang web lên máy chủ.