Bộ 2 - 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. Phương pháp HTTP nào thường được sử dụng để yêu cầu dữ liệu từ một máy chủ?
A. POST
B. PUT
C. DELETE
D. GET
2. Trong ngữ cảnh của HTML, thuộc tính 'alt' của một thẻ hình ảnh được sử dụng để làm gì?
A. Điều chỉnh kích thước của hình ảnh.
B. Cung cấp một văn bản thay thế cho hình ảnh nếu hình ảnh không thể tải được.
C. Thêm hiệu ứng động cho hình ảnh.
D. Đặt hình ảnh làm hình nền của trang web.
3. Trong CSS, 'specificity' (độ ưu tiên) được sử dụng để làm gì?
A. Để xác định tốc độ tải của một trang web.
B. Để xác định kiểu nào sẽ được áp dụng cho một phần tử khi có nhiều quy tắc CSS xung đột.
C. Để tạo hiệu ứng động.
D. Để xác định kích thước phông chữ mặc định.
4. Công nghệ nào sau đây cho phép bạn chạy JavaScript phía máy chủ?
A. HTML
B. CSS
C. Node.js
D. AJAX
5. Trong HTML5, phần tử 'canvas' được sử dụng để làm gì?
A. Để tạo bố cục trang web phức tạp.
B. Để nhúng video.
C. Để vẽ đồ họa, tạo hình ảnh động và trò chơi thông qua JavaScript.
D. Để tạo bảng dữ liệu.
6. Trong CSS, thuộc tính 'z-index' được sử dụng để làm gì?
A. Để xác định kích thước của một phần tử.
B. Để xác định vị trí của một phần tử trên trục z (sắp xếp lớp), ảnh hưởng đến việc phần tử nào hiển thị trước hoặc sau các phần tử khác.
C. Để xác định màu sắc của một phần tử.
D. Để xác định độ trong suốt của một phần tử.
7. Trong CSS, thuộc tính 'position: absolute;' có tác dụng gì?
A. Đặt phần tử theo vị trí tương đối so với phần tử cha gần nhất có thuộc tính 'position' khác 'static'.
B. Đặt phần tử theo vị trí cố định trên màn hình, không di chuyển khi cuộn trang.
C. Đặt phần tử theo vị trí tĩnh trong luồng tài liệu.
D. Không có tác dụng gì.
8. AJAX (Asynchronous JavaScript and XML) cho phép bạn làm gì?
A. Tạo hiệu ứng động cho trang web.
B. Tải lại toàn bộ trang web mỗi khi có thay đổi.
C. Cập nhật một phần của trang web mà không cần tải lại toàn bộ trang.
D. Lưu trữ dữ liệu trên máy chủ.
9. Mục đích của việc sử dụng 'code splitting' (chia nhỏ mã) trong phát triển web là gì?
A. Để làm cho mã nguồn dễ đọc hơn.
B. Để giảm kích thước của các tệp mã nguồn bằng cách loại bỏ các ký tự không cần thiết.
C. Để chia mã nguồn thành các phần nhỏ hơn và tải chúng một cách riêng biệt khi cần thiết, giúp tăng tốc độ tải trang và cải thiện hiệu suất.
D. Để mã hóa mã nguồn.
10. Trong ngữ cảnh của bảo mật web, XSS (Cross-Site Scripting) là gì?
A. Một loại tấn công từ chối dịch vụ.
B. Một lỗ hổng bảo mật cho phép kẻ tấn công chèn mã độc hại (thường là JavaScript) vào các trang web mà người dùng khác xem.
C. Một phương pháp để mã hóa dữ liệu.
D. Một giao thức để truyền dữ liệu an toàn.
11. Thuộc tính CSS 'box-sizing: border-box;' ảnh hưởng đến cách tính toán kích thước của một phần tử như thế nào?
A. Nó không ảnh hưởng đến kích thước của phần tử.
B. Chiều rộng và chiều cao được chỉ định bao gồm cả padding và border.
C. Chiều rộng và chiều cao chỉ bao gồm nội dung, không bao gồm padding và border.
D. Nó tự động điều chỉnh kích thước của phần tử để phù hợp với nội dung.
12. Trong lập trình web, CORS (Cross-Origin Resource Sharing) được sử dụng để làm gì?
A. Tăng tốc độ tải trang web.
B. Bảo vệ chống lại tấn công SQL injection.
C. Quản lý phiên người dùng.
D. Cho phép hoặc hạn chế các yêu cầu HTTP từ một origin này đến một origin khác.
13. Phương pháp HTTP nào thường được sử dụng để gửi dữ liệu lên máy chủ để tạo một tài nguyên mới?
A. GET
B. DELETE
C. PUT
D. POST
14. Trong JavaScript, 'closure' (bao đóng) là gì?
A. Một cách để tạo các biến toàn cục.
B. Một hàm bên trong một hàm khác có quyền truy cập vào các biến của hàm bên ngoài, ngay cả sau khi hàm bên ngoài đã thực thi xong.
C. Một vòng lặp vô hạn.
D. Một loại lỗi cú pháp.
15. Mục đích của việc sử dụng 'minification' (tối thiểu hóa) trong phát triển web là gì?
A. Để làm cho mã nguồn dễ đọc hơn.
B. Để giảm kích thước của các tệp (ví dụ: CSS, JavaScript) bằng cách loại bỏ các ký tự không cần thiết (ví dụ: khoảng trắng, chú thích), giúp tăng tốc độ tải trang web.
C. Để mã hóa mã nguồn.
D. Để tự động tạo tài liệu API.
16. Mục đích của việc sử dụng một CDN (Content Delivery Network) là gì?
A. Để bảo vệ trang web khỏi tấn công DDoS.
B. Để lưu trữ dữ liệu người dùng.
C. Để phân phối nội dung trang web (ví dụ: hình ảnh, CSS, JavaScript) từ các máy chủ trên khắp thế giới, giúp tăng tốc độ tải trang cho người dùng.
D. Để quản lý cơ sở dữ liệu.
17. Trong JavaScript, 'event delegation' (ủy quyền sự kiện) là gì?
A. Một kỹ thuật để tạo hiệu ứng động.
B. Một kỹ thuật để gắn một trình xử lý sự kiện vào một phần tử cha thay vì gắn nó vào từng phần tử con riêng lẻ, giúp giảm số lượng trình xử lý sự kiện và cải thiện hiệu suất.
C. Một cách để tối ưu hóa mã nguồn.
D. Một loại lỗi cú pháp.
18. Trong CSS, thuộc tính 'display: none;' có tác dụng gì?
A. Ẩn phần tử khỏi trang web và không chiếm không gian.
B. Ẩn phần tử khỏi trang web nhưng vẫn chiếm không gian.
C. Làm cho phần tử trong suốt.
D. Chỉ hiển thị phần tử trên các thiết bị di động.
19. Sự khác biệt chính giữa '==' và '===' trong JavaScript là gì?
A. '==' so sánh giá trị và kiểu dữ liệu, trong khi '===' chỉ so sánh giá trị.
B. '==' so sánh giá trị sau khi chuyển đổi kiểu dữ liệu nếu cần, trong khi '===' so sánh giá trị và kiểu dữ liệu mà không chuyển đổi kiểu.
C. '==' được sử dụng cho so sánh số, trong khi '===' được sử dụng cho so sánh chuỗi.
D. Không có sự khác biệt; chúng hoàn toàn giống nhau.
20. Trong ngữ cảnh của SEO (Search Engine Optimization), 'canonical URL' (URL chuẩn) là gì?
A. URL của trang chủ.
B. URL của trang có nội dung quan trọng nhất.
C. URL được các công cụ tìm kiếm coi là phiên bản chính thức của một trang web, giúp tránh các vấn đề về nội dung trùng lặp.
D. URL được sử dụng để theo dõi người dùng.
21. Trong JavaScript, 'hoisting' là gì?
A. Một kỹ thuật để tạo hiệu ứng động.
B. Một cơ chế mà trình thông dịch JavaScript di chuyển các khai báo biến và hàm lên đầu phạm vi của chúng trước khi thực thi mã.
C. Một cách để tối ưu hóa mã nguồn.
D. Một loại lỗi cú pháp.
22. Sự khác biệt chính giữa 'sessionStorage' và 'localStorage' trong trình duyệt web là gì?
A. 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.
B. 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 (khi trình duyệt còn mở).
C. sessionStorage có thể được truy cập bởi tất cả các trang web, trong khi localStorage chỉ có thể được truy cập bởi trang web đã tạo ra nó.
D. Không có sự khác biệt; chúng hoàn toàn giống nhau.
23. Sự khác biệt chính giữa 'PUT' và 'PATCH' trong các phương thức HTTP là gì?
A. 'PUT' được sử dụng để tạo tài nguyên mới, trong khi 'PATCH' được sử dụng để cập nhật tài nguyên hiện có.
B. 'PUT' thay thế toàn bộ tài nguyên bằng dữ liệu mới, trong khi 'PATCH' chỉ cập nhật một phần của tài nguyên.
C. 'PUT' chỉ có thể được sử dụng để cập nhật các trường số, trong khi 'PATCH' có thể được sử dụng để cập nhật bất kỳ loại trường nào.
D. Không có sự khác biệt; chúng hoàn toàn giống nhau.
24. Sự khác biệt chính giữa 'cookies' và 'localStorage' trong trình duyệt web là gì?
A. Cookies chỉ có thể lưu trữ số, trong khi localStorage có thể lưu trữ chuỗi.
B. Cookies được lưu trữ phía máy chủ, trong khi localStorage được lưu trữ phía trình duyệt.
C. Cookies có kích thước lưu trữ nhỏ hơn và được gửi kèm với mỗi yêu cầu HTTP, trong khi localStorage có kích thước lớn hơn và chỉ được truy cập bởi JavaScript.
D. Không có sự khác biệt; chúng là hai tên gọi khác nhau cho cùng một cơ chế lưu trữ.
25. Trong JavaScript, 'async' và 'await' được sử dụng để làm gì?
A. Để tạo các biến toàn cục.
B. Để làm cho mã bất đồng bộ trông và hoạt động giống như mã đồng bộ, giúp viết mã dễ đọc và bảo trì hơn.
C. Để tạo hiệu ứng động.
D. Để tối ưu hóa mã nguồn.
26. JSON (JavaScript Object Notation) thường được sử dụng cho mục đích gì trong phát triển web?
A. Định dạng bố cục trang web.
B. Lưu trữ các tệp hình ảnh.
C. Truyền dữ liệu giữa máy chủ và trình duyệt web.
D. Thực thi mã phía máy chủ.
27. Trong CSS, pseudo-class ':hover' được sử dụng để làm gì?
A. Để tạo hiệu ứng khi một phần tử được nhấp vào.
B. Để tạo hiệu ứng khi chuột di chuyển qua một phần tử.
C. Để tạo hiệu ứng khi một phần tử được chọn.
D. Để tạo hiệu ứng khi một phần tử được tải xong.
28. Thuật ngữ ""responsive web design"" (thiết kế web đáp ứng) đề cập đến điều gì?
A. Thiết kế trang web chỉ hoạt động trên máy tính để bàn.
B. Thiết kế trang web tự động dịch nội dung sang nhiều ngôn ngữ.
C. Thiết kế trang web có khả năng tự động điều chỉnh bố cục và nội dung để phù hợp với nhiều kích thước màn hình và thiết bị khác nhau.
D. Thiết kế trang web chỉ sử dụng hình ảnh vector.
29. Mục đích chính của việc sử dụng một hệ thống quản lý phiên bản (ví dụ: Git) trong phát triển web là gì?
A. Để tự động tối ưu hóa mã nguồn.
B. Để theo dõi và quản lý các thay đổi của mã nguồn theo thời gian, cho phép cộng tác và phục hồi các phiên bản trước đó.
C. Để tự động tạo tài liệu API.
D. Để mã hóa mã nguồn.
30. Trong JavaScript, 'promises' (lời hứa) được sử dụng để làm gì?
A. Để tạo các biến toàn cục.
B. Để xử lý các hoạt động bất đồng bộ một cách dễ dàng hơn, tránh ""callback hell"".
C. Để tạo hiệu ứng động.
D. Để tối ưu hóa mã nguồn.