Skip to content
Tài Liệu Trọn Đời - Thư viện tài liệu học tập - 5

Blog Cá Nhân | Chia Sẻ Tài Liệu Học Tập Miễn Phí

    • Trang chủ
      • Về chúng tôi
      • Quy định sử dụng
      • Miễn trừ trách nhiệm
      • Bản quyền & Khiếu nại
    • Đáp án
    • Góc học tập
      • Toán học
      • Vật lý
      • Hóa học
      • Tiếng Anh
    • Trắc nghiệm
      • Question – Answer Quiz
      • Trắc nghiệm Tiếng Anh
      • Trắc nghiệm Đại học
      • Trắc nghiệm THPT
      • Trắc nghiệm THCS
      • Trắc nghiệm Tập huấn – Bồi dưỡng
    • Liên hệ
    • Sitemap
    • Trang chủ
      • Về chúng tôi
      • Quy định sử dụng
      • Miễn trừ trách nhiệm
      • Bản quyền & Khiếu nại
    • Đáp án
    • Góc học tập
      • Toán học
      • Vật lý
      • Hóa học
      • Tiếng Anh
    • Trắc nghiệm
      • Question – Answer Quiz
      • Trắc nghiệm Tiếng Anh
      • Trắc nghiệm Đại học
      • Trắc nghiệm THPT
      • Trắc nghiệm THCS
      • Trắc nghiệm Tập huấn – Bồi dưỡng
    • Liên hệ
    • Sitemap
    Tài Liệu Trọn Đời - Thư viện tài liệu học tập - 5

    Blog Cá Nhân | Chia Sẻ Tài Liệu Học Tập Miễn Phí

    Trang chủ » Trắc nghiệm Đại học » 150+ câu hỏi trắc nghiệm lập trình web online có đáp án

    Trắc nghiệm Đại học online

    150+ câu hỏi trắc nghiệm lập trình web online có đáp án

    Ngày cập nhật: 30/07/2025

    ⚠️ Đọc lưu ý và miễn trừ trách nhiệm trước khi bắt đầu: Các câu hỏi và đáp án trong bộ trắc nghiệm này chỉ mang tính chất tham khảo, hỗ trợ học tập và ôn luyện. Đây KHÔNG PHẢI là đề thi chính thức, không đại diện cho bất kỳ tài liệu chuẩn hóa hay kiểm tra chứng chỉ nào từ các cơ quan giáo dục hay tổ chức cấp chứng chỉ chuyên môn. Website không chịu bất kỳ trách nhiệm nào liên quan đến độ chính xác của nội dung hoặc các quyết định được đưa ra dựa trên kết quả làm bài trắc nghiệm.

    Bạn đã sẵn sàng bắt đầu với bộ 150+ câu hỏi trắc nghiệm lập trình web online có đáp án. Hệ thống câu hỏi trắc nghiệm này hứa hẹn mang đến cho bạn một trải nghiệm học tập tích cực và linh hoạt. Chỉ cần nhấn vào bộ câu hỏi mà bạn muốn thử sức để bắt đầu làm bài. Hãy tập trung và hoàn thành bài thật tốt nhé!

    1. Thuật ngữ ‘semantic HTML’ đề cập đến điều gì?

    A. Sử dụng HTML chỉ cho mục đích trình bày, không chứa nội dung.
    B. Sử dụng các thẻ HTML có ý nghĩa rõ ràng về mặt ngữ nghĩa để mô tả cấu trúc và nội dung của trang web.
    C. Viết mã HTML sao cho ngắn gọn nhất có thể.
    D. Sử dụng HTML để tạo hiệu ứng động.

    2. Trong Node.js, `npm` (Node Package Manager) được sử dụng để làm gì?

    A. Để quản lý các gói và thư viện JavaScript, giúp cài đặt, cập nhật và gỡ bỏ chúng một cách dễ dàng.
    B. Để biên dịch mã JavaScript thành mã máy.
    C. Để chạy các ứng dụng JavaScript trên trình duyệt.
    D. Để tạo các hiệu ứng động cho trang web.

    3. Đâu là một cách để bảo vệ trang web khỏi tấn công SQL injection?

    A. Sử dụng HTTPS.
    B. Sử dụng prepared statements hoặc parameterized queries để xử lý dữ liệu đầu vào từ người dùng một cách an toàn.
    C. Sử dụng JavaScript để mã hóa dữ liệu.
    D. Vô hiệu hóa cookies.

    4. Trong lập trình web, thuật ngữ ‘responsive design’ đề cập đến điều gì?

    A. Một thiết kế web chỉ hiển thị tốt trên máy tính để bàn.
    B. Một phương pháp thiết kế web tạo ra các trang web thích ứng với nhiều kích thước màn hình và thiết bị.
    C. Một loại ngôn ngữ lập trình web mới.
    D. Một kỹ thuật để tăng tốc độ tải trang web.

    5. 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.
    B. Một cơ chế bảo mật trình duyệt cho phép các trang web từ một nguồn (origin) khác nhau truy cập tài nguyên từ một nguồn khác.
    C. Một phương pháp để tạo hiệu ứng động cho trang web.
    D. Một cách để mã hóa dữ liệu trên trang web.

    6. Trong JavaScript, sự khác biệt chính giữa `==` và `===` 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. Không có sự khác biệt, cả hai đều so sánh giá trị.
    D. Cả hai đều so sánh giá trị và kiểu dữ liệu, nhưng `===` nhanh hơn.

    7. Thuật ngữ ‘lazy loading’ trong lập trình web đề cập đến điều gì?

    A. Việc tải tất cả các tài nguyên của trang web cùng một lúc.
    B. Việc chỉ tải các tài nguyên (ví dụ: hình ảnh, video) khi chúng cần thiết, ví dụ như khi người dùng cuộn trang đến vị trí của chúng.
    C. Việc sử dụng một ngôn ngữ lập trình ‘lười biếng’.
    D. Việc trì hoãn việc phát triển trang web.

    8. Trong ngữ cảnh của SEO (Search Engine Optimization), ‘long-tail keyword’ là gì?

    A. Một từ khóa rất phổ biến và cạnh tranh cao.
    B. Một cụm từ khóa dài và cụ thể hơn, thường có ít cạnh tranh hơn và nhắm mục tiêu đến một đối tượng cụ thể hơn.
    C. Một từ khóa được sử dụng trong thẻ ‘meta’ của trang web.
    D. Một từ khóa được sử dụng để tạo liên kết nội bộ.

    9. Sự khác biệt chính giữa cookies và local storage là gì?

    A. Cookies chỉ có thể lưu trữ dữ liệu văn bản, trong khi local storage có thể lưu trữ nhiều loại dữ liệu hơn.
    B. Cookies được lưu trữ trên máy chủ, trong khi local storage được lưu trữ trên trình duyệt của người dùng.
    C. Local storage có dung lượng lưu trữ lớn hơn và không bị gửi kèm trong mỗi yêu cầu HTTP như cookies.
    D. Cookies chỉ có thể được truy cập bởi JavaScript, trong khi local storage có thể được truy cập bởi cả JavaScript và HTML.

    10. Trong CSS, thuộc tính `z-index` được sử dụng để làm gì?

    A. Để thay đổi màu nền của một phần tử.
    B. Để xác định thứ tự xếp chồng của các phần tử HTML, phần tử có z-index cao hơn sẽ nằm trên các phần tử khác.
    C. Để tạo hiệu ứng bóng đổ cho một phần tử.
    D. Để thay đổi kích thước của một phần tử.

    11. Sự khác biệt chính giữa phương thức GET và POST trong 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. POST được sử dụng để lấy dữ liệu từ máy chủ, trong khi GET được sử dụng để gửi dữ liệu lên máy chủ.
    C. GET nhanh hơn POST.
    D. POST an toàn hơn GET.

    12. Đâu là lợi ích của việc sử dụng một framework JavaScript như Angular, React hoặc Vue?

    A. Để viết mã JavaScript nhanh hơn mà không cần hiểu rõ về cú pháp.
    B. Để cung cấp một cấu trúc và tổ chức code nhất quán, giúp phát triển ứng dụng web phức tạp dễ dàng và hiệu quả hơn.
    C. Để tự động tối ưu hóa SEO cho trang web.
    D. Để loại bỏ hoàn toàn nhu cầu viết mã HTML và CSS.

    13. Đâu là một lợi ích của việc sử dụng TypeScript thay vì JavaScript?

    A. TypeScript chạy nhanh hơn JavaScript.
    B. TypeScript cung cấp kiểu tĩnh, giúp phát hiện lỗi trong quá trình phát triển sớm hơn và cải thiện khả năng bảo trì mã.
    C. TypeScript không cần biên dịch.
    D. TypeScript có cú pháp đơn giản hơn JavaScript.

    14. Trong ReactJS, ‘state’ là gì?

    A. Một cách để định kiểu cho các component.
    B. Một đối tượng chứa dữ liệu có thể thay đổi của một component, khi state thay đổi, component sẽ được render lại.
    C. Một hàm được sử dụng để tạo các component.
    D. Một thư viện để quản lý các route trong ứng dụng.

    15. Chức năng của một CDN (Content Delivery Network) là gì?

    A. Để bảo vệ trang web khỏi các cuộc 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 từ các máy chủ gần người dùng hơn, giảm độ trễ và tăng tốc độ tải trang.
    D. Để tự động tạo mã HTML.

    16. Trong kiến trúc RESTful API, phương thức HTTP nào được sử dụng để cập nhật một phần của tài nguyên?

    A. GET
    B. POST
    C. PUT
    D. PATCH

    17. 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ụ (DoS).
    B. Một kỹ thuật để cải thiện hiệu suất trang web.
    C. Một lỗ hổng bảo mật cho phép kẻ tấn công chèn mã độc hại vào các trang web mà người dùng khác xem.
    D. Một phương pháp để mã hóa dữ liệu trên trang web.

    18. Đâu là một cách để cải thiện khả năng truy cập (accessibility) của một trang web?

    A. Sử dụng màu sắc tương phản cao, cung cấp văn bản thay thế cho hình ảnh (alt text) và đảm bảo cấu trúc HTML có ý nghĩa (semantic HTML).
    B. Sử dụng nhiều hiệu ứng động.
    C. Sử dụng phông chữ nhỏ.
    D. Tắt JavaScript.

    19. Trong ngữ cảnh của kiểm thử phần mềm (software testing), kiểm thử đơn vị (unit testing) là gì?

    A. Kiểm thử toàn bộ ứng dụng.
    B. Kiểm thử từng thành phần (unit) nhỏ nhất của ứng dụng (ví dụ: hàm, lớp) một cách độc lập để đảm bảo chúng hoạt động đúng như mong đợi.
    C. Kiểm thử giao diện người dùng.
    D. Kiểm thử hiệu suất của ứng dụng.

    20. Trong kiến trúc Microservices, điều gì là quan trọng nhất?

    A. Tất cả các services phải sử dụng cùng một ngôn ngữ lập trình.
    B. Các services phải được kết nối chặt chẽ với nhau.
    C. Mỗi service phải độc lập, tự quản lý và có thể triển khai riêng lẻ, giao tiếp với các service khác thông qua API.
    D. Các services phải chia sẻ cùng một cơ sở dữ liệu.

    21. Trong JavaScript, closures là gì?

    A. Một cách để tạo các biến toàn cục.
    B. Một hàm có thể truy cập các biến trong phạm vi (scope) của hàm cha, ngay cả sau khi hàm cha đã thực thi xong.
    C. Một cách để định nghĩa các lớp (classes).
    D. Một cách để tạo các hiệu ứng động.

    22. Đâu là mục đích chính của việc sử dụng CSS preprocessors như Sass hoặc Less?

    A. Để viết mã JavaScript nhanh hơn.
    B. Để làm cho mã CSS dễ đọc và bảo trì hơn bằng cách sử dụng các tính năng như biến, mixin và nesting.
    C. Để tối ưu hóa hình ảnh cho trang web.
    D. Để cải thiện SEO của trang web.

    23. Sự khác biệt chính giữa ‘session storage’ và ‘local storage’ trong JavaScript là gì?

    A. Session storage lưu trữ dữ liệu vĩnh viễn, trong khi local storage chỉ lưu trữ dữ liệu trong một phiên.
    B. Local storage lưu trữ dữ liệu vĩnh viễn, trong khi session storage chỉ lưu trữ dữ liệu trong một phiên trình duyệt.
    C. Session storage có dung lượng lưu trữ lớn hơn local storage.
    D. Local storage an toàn hơn session storage.

    24. Phương pháp nào sau đây thường được sử dụng để cải thiện hiệu suất tải trang web?

    A. Tăng kích thước phông chữ.
    B. Sử dụng nhiều hiệu ứng động CSS.
    C. Tối ưu hóa hình ảnh, sử dụng bộ nhớ cache của trình duyệt và giảm thiểu mã CSS/JavaScript.
    D. Thêm nhiều video tự động phát.

    25. Điều gì xảy ra khi một người dùng nhập một URL vào trình duyệt của họ?

    A. Trình duyệt hiển thị trang web đã lưu trong bộ nhớ cache.
    B. Trình duyệt gửi một yêu cầu đến máy chủ DNS để tìm địa chỉ IP tương ứng với tên miền, sau đó gửi một yêu cầu HTTP đến máy chủ đó.
    C. Trình duyệt tự động tải xuống tất cả các tệp từ trang web.
    D. Trình duyệt gửi email cho quản trị viên trang web.

    26. Trong CSS, thuộc tính `display: flex;` được sử dụng để làm gì?

    A. Để ẩn một phần tử khỏi trang web.
    B. Để tạo một bố cục linh hoạt (flexible layout) cho các phần tử con, giúp dễ dàng căn chỉnh và phân phối không gian giữa chúng.
    C. Để tạo hiệu ứng động cho một phần tử.
    D. Để thay đổi màu chữ của một phần tử.

    27. Đâu là một cách để ngăn chặn tấn công CSRF (Cross-Site Request Forgery)?

    A. Sử dụng HTTPS.
    B. Sử dụng các token CSRF, được tạo ngẫu nhiên và kiểm tra ở phía máy chủ để xác minh tính hợp lệ của yêu cầu.
    C. Sử dụng JavaScript để mã hóa dữ liệu.
    D. Vô hiệu hóa cookies.

    28. Trong React, props là gì?

    A. Một cách để định nghĩa các biến toàn cục.
    B. Một cơ chế để truyền dữ liệu từ component cha xuống component con; props là read-only từ quan điểm của component con.
    C. Một cách để định nghĩa các hàm tiện ích.
    D. Một cơ chế để quản lý state cục bộ.

    29. Thuật ngữ ‘code splitting’ trong lập trình web đề cập đến điều gì?

    A. Việc chia sẻ mã giữa các dự án khác nhau.
    B. Việc chia mã ứng dụng thành các phần nhỏ hơn, có thể tải theo yêu cầu, giúp giảm thời gian tải ban đầu của trang web.
    C. Việc viết mã bằng nhiều ngôn ngữ lập trình khác nhau.
    D. Việc sử dụng các thư viện mã nguồn mở.

    30. Đâu là sự khác biệt chính giữa `display: none;` và `visibility: hidden;` trong CSS?

    A. `display: none;` ẩn phần tử và loại bỏ nó khỏi luồng tài liệu, trong khi `visibility: hidden;` ẩn phần tử nhưng vẫn giữ chỗ của nó trong luồng tài liệu.
    B. `visibility: hidden;` ẩn phần tử và loại bỏ nó khỏi luồng tài liệu, trong khi `display: none;` ẩn phần tử nhưng vẫn giữ chỗ của nó trong luồng tài liệu.
    C. Không có sự khác biệt, cả hai đều ẩn phần tử và loại bỏ nó khỏi luồng tài liệu.
    D. Không có sự khác biệt, cả hai đều ẩn phần tử nhưng vẫn giữ chỗ của nó trong luồng tài liệu.

    31. Trong JavaScript, ‘closure’ là gì?

    A. Một loại vòng lặp.
    B. Một hàm có thể truy cập các biến từ phạm vi bên ngoài của nó, ngay cả sau khi hàm bên ngoài đã kết thúc thực thi.
    C. Một cách để tạo ra các đối tượng.
    D. Một kỹ thuật để tối ưu hóa hiệu suất của mã.

    32. Trong JavaScript, ‘hoisting’ là gì?

    A. Một kỹ thuật để tạo ra các hiệu ứng hoạt hình.
    B. Một hành vi trong đó các khai báo biến và hàm được di chuyển lên đầu phạm vi của chúng trước khi mã được thực thi.
    C. Một phương pháp để bảo mật trang web.
    D. Một cách để tối ưu hóa hình ảnh.

    33. Trong ngữ cảnh của cơ sở dữ liệu web, ‘ORM’ (Object-Relational Mapping) là gì?

    A. Một loại ngôn ngữ lập trình.
    B. Một kỹ thuật cho phép bạn truy vấn và thao tác dữ liệu từ cơ sở dữ liệu bằng cách sử dụng các đối tượng trong ngôn ngữ lập trình của bạn.
    C. Một công cụ để thiết kế giao diện người dùng.
    D. Một phương pháp để tăng tốc độ tải trang web.

    34. Cơ chế nào cho phép một trang web lưu trữ dữ liệu trên máy tính của người dùng và truy xuất nó sau này?

    A. Cookies và Local Storage.
    B. Session Storage và URL parameters.
    C. Server-side caching.
    D. DNS records.

    35. Trong ngữ cảnh của web performance, ‘Critical Rendering Path’ (CRP) là gì?

    A. Đường dẫn mà trình duyệt sử dụng để tải mã JavaScript.
    B. Chuỗi các bước mà trình duyệt thực hiện để chuyển đổi HTML, CSS và JavaScript thành một trang web hiển thị trên màn hình.
    C. Một phương pháp để bảo mật trang web.
    D. Một công cụ để kiểm tra lỗi trong mã HTML.

    36. Kỹ thuật ‘Minification’ trong phát triển web dùng để làm gì?

    A. Tăng kích thước của các file CSS và JavaScript để cải thiện khả năng đọc.
    B. Giảm kích thước của các file CSS và JavaScript bằng cách loại bỏ khoảng trắng, chú thích và các ký tự không cần thiết.
    C. Mã hóa các file CSS và JavaScript để bảo vệ bản quyền.
    D. Chuyển đổi các file CSS và JavaScript sang định dạng hình ảnh.

    37. CDN (Content Delivery Network) được sử dụng để làm gì trong phát triển web?

    A. Để lưu trữ mã nguồn của trang web.
    B. Để phân phối nội dung tĩnh (như 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. Để quản lý cơ sở dữ liệu của trang web.
    D. Để bảo vệ trang web khỏi các cuộc tấn công DDoS.

    38. Sự khác biệt giữa `display: none;` và `visibility: hidden;` trong CSS là gì?

    A. `display: none;` ẩn phần tử và loại bỏ nó khỏi luồng tài liệu, trong khi `visibility: hidden;` ẩn phần tử nhưng vẫn giữ chỗ của nó trong luồng tài liệu.
    B. `visibility: hidden;` ẩn phần tử và loại bỏ nó khỏi luồng tài liệu, trong khi `display: none;` ẩn phần tử nhưng vẫn giữ chỗ của nó trong luồng tài liệu.
    C. Không có sự khác biệt giữa `display: none;` và `visibility: hidden;`.
    D. `display: none;` chỉ hoạt động trên các phần tử block, còn `visibility: hidden;` chỉ hoạt động trên các phần tử inline.

    39. Phương pháp nào sau đây giúp cải thiện hiệu suất tải trang web?

    A. Sử dụng hình ảnh có kích thước lớn và độ phân giải cao.
    B. Tải tất cả các script đồng bộ ở đầu trang.
    C. Tối ưu hóa hình ảnh, sử dụng kỹ thuật lazy loading, và minify CSS/JavaScript.
    D. Sử dụng nhiều font chữ khác nhau trên trang web.

    40. Phương pháp nào sau đây là tốt nhất để đảm bảo tính bảo mật cho một ứng dụng web?

    A. Sử dụng mật khẩu đơn giản và dễ nhớ.
    B. Lưu trữ thông tin người dùng ở dạng văn bản thuần túy trong cơ sở dữ liệu.
    C. Thường xuyên cập nhật các thư viện và framework, sử dụng HTTPS và thực hiện kiểm tra bảo mật định kỳ.
    D. Chỉ cho phép người dùng truy cập ứng dụng từ một địa chỉ IP duy nhất.

    41. Đâu là một trong những cách tốt nhất để ngăn chặn tấn công ‘SQL injection’?

    A. Sử dụng mật khẩu mạnh.
    B. Sử dụng prepared statements hoặc parameterized queries để xử lý dữ liệu đầu vào từ người dùng.
    C. Tắt JavaScript trên trang web.
    D. Sử dụng hình ảnh có độ phân giải thấp.

    42. Trong phát triển web, ‘Progressive Enhancement’ là gì?

    A. Một kỹ thuật để làm cho trang web trông đẹp hơn.
    B. Một chiến lược thiết kế web tập trung vào việc cung cấp nội dung và chức năng cơ bản cho tất cả người dùng, sau đó tăng cường trải nghiệm cho những người dùng có trình duyệt hoặc thiết bị hiện đại hơn.
    C. Một phương pháp để tăng tốc độ tải trang web.
    D. Một cách để bảo mật trang web.

    43. Trong phát triển web, ‘Microservices’ là gì?

    A. Một loại ngôn ngữ lập trình.
    B. Một kiến trúc phần mềm trong đó ứng dụng được cấu trúc như một tập hợp các dịch vụ nhỏ, độc lập, giao tiếp với nhau qua các API.
    C. Một công cụ để thiết kế giao diện người dùng.
    D. Một phương pháp để tăng tốc độ tải trang web.

    44. Trong lập trình web, CORS là viết tắt của cụm từ nào?

    A. Cross-Origin Resource Sharing.
    B. Cascading Order Resource System.
    C. Common Object Request Service.
    D. Centralized Operating Response System.

    45. Trong JavaScript, sự khác biệt chính giữa `==` và `===` 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. Không có sự khác biệt giữa `==` và `===`.
    D. `==` chỉ sử dụng được với số, còn `===` chỉ sử dụng được với chuỗi.

    46. Đâu là sự khác biệt chính giữa `sessionStorage` và `localStorage` trong JavaScript?

    A. `sessionStorage` lưu trữ dữ liệu vĩnh viễn, còn `localStorage` lưu trữ dữ liệu chỉ trong một phiên làm việc.
    B. `localStorage` lưu trữ dữ liệu vĩnh viễn, còn `sessionStorage` lưu trữ dữ liệu chỉ trong một phiên làm việc.
    C. Không có sự khác biệt giữa `sessionStorage` và `localStorage`.
    D. `sessionStorage` chỉ lưu trữ được chuỗi, còn `localStorage` lưu trữ được mọi kiểu dữ liệu.

    47. Trong ngữ cảnh của SEO (Search Engine Optimization), ‘long-tail keyword’ là gì?

    A. Một từ khóa rất phổ biến và có tính cạnh tranh cao.
    B. Một cụm từ khóa dài và cụ thể, thường ít được tìm kiếm hơn nhưng có tỷ lệ chuyển đổi cao hơn.
    C. Một từ khóa chỉ được sử dụng trong một khoảng thời gian ngắn.
    D. Một từ khóa được tạo ra ngẫu nhiên.

    48. Công nghệ nào sau đây thường được sử dụng để tạo các ứng dụng web đơn trang (Single Page Application – SPA)?

    A. HTML thuần túy.
    B. CSS thuần túy.
    C. JavaScript frameworks như React, Angular, hoặc Vue.js.
    D. SQL.

    49. Thuật ngữ ‘Responsive Web Design’ (RWD) có nghĩa là gì?

    A. Thiết kế web chỉ hoạt động trên các thiết bị di động.
    B. Thiết kế 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 khác nhau.
    C. Thiết kế web chỉ sử dụng các hình ảnh có độ phân giải cao.
    D. Thiết kế web có thời gian tải trang nhanh.

    50. Trong ngữ cảnh của bảo mật web, tấn công ‘Cross-Site Scripting’ (XSS) là gì?

    A. Một loại tấn công từ chối dịch vụ (Denial of Service).
    B. Một loại tấn công mà kẻ tấn công chèn mã độc hại vào trang web, mã này sau đó được thực thi trên trình duyệt của người dùng khác.
    C. Một loại tấn công nhằm đánh cắp thông tin đăng nhập của người dùng.
    D. Một loại tấn công nhằm thay đổi giao diện của trang web.

    51. Trong CSS, thuộc tính `z-index` được sử dụng để làm gì?

    A. Để thay đổi màu sắc của phần tử.
    B. Để kiểm soát thứ tự xếp chồng của các phần tử HTML.
    C. Để thay đổi kích thước của phần tử.
    D. Để căn chỉnh vị trí của phần tử.

    52. Đâu là một trong những lợi ích chính của việc sử dụng CSS preprocessors như Sass hoặc Less?

    A. Tăng tốc độ tải trang web.
    B. Cho phép sử dụng các tính năng nâng cao như biến, mixin, và nesting, giúp viết CSS dễ dàng và bảo trì hơn.
    C. Tự động bảo mật trang web.
    D. Chuyển đổi CSS sang JavaScript.

    53. Trong lập trình web, thuật ngữ ‘Semantic HTML’ đề cập đến điều gì?

    A. Sử dụng các thẻ HTML để định dạng nội dung một cách trực quan.
    B. Sử dụng các thẻ HTML có ý nghĩa rõ ràng về mặt ngữ nghĩa, mô tả nội dung chứa trong chúng.
    C. Sử dụng các thẻ HTML để tối ưu hóa hiệu suất của trang web.
    D. Sử dụng các thẻ HTML theo một cấu trúc nhất định để đảm bảo tính nhất quán.

    54. Đâu là một trong những lợi ích chính của việc sử dụng ‘Static Site Generators’ (SSG) như Jekyll hoặc Hugo?

    A. Tăng tốc độ tải trang web, cải thiện bảo mật, và dễ dàng triển khai.
    B. Cho phép tạo ra các trang web động với nhiều tính năng tương tác.
    C. Tự động bảo mật trang web.
    D. Chuyển đổi CSS sang JavaScript.

    55. Đâu là một trong những cách tốt nhất để cải thiện khả năng truy cập (accessibility) của một trang web?

    A. Sử dụng màu sắc tương phản cao, cung cấp văn bản thay thế cho hình ảnh, và đảm bảo rằng trang web có thể được điều hướng bằng bàn phím.
    B. Sử dụng nhiều hiệu ứng hoạt hình.
    C. Sử dụng hình ảnh có độ phân giải cao.
    D. Tắt JavaScript trên trang web.

    56. Trong phát triển web, thuật ngữ ‘API’ (Application Programming Interface) dùng để chỉ điều gì?

    A. Một ngôn ngữ lập trình mới.
    B. Một tập hợp các quy tắc và giao thức cho phép các ứng dụng phần mềm giao tiếp và trao đổi dữ liệu với nhau.
    C. Một công cụ để thiết kế giao diện người dùng.
    D. Một phương pháp để bảo mật trang web.

    57. Trong lập trình web, ‘RESTful API’ là gì?

    A. Một loại ngôn ngữ lập trình.
    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), sử dụng các phương thức HTTP như GET, POST, PUT, DELETE để thao tác với tài nguyên.
    C. Một công cụ để bảo mật trang web.
    D. Một phương pháp để tăng tốc độ tải trang web.

    58. Đâu là một trong những lợi ích chính của việc sử dụng ‘Code splitting’ trong các ứng dụng web?

    A. Tăng kích thước của các file JavaScript.
    B. Giảm thời gian tải trang ban đầu bằng cách chia nhỏ ứng dụng thành các phần nhỏ hơn và chỉ tải những phần cần thiết.
    C. Làm cho mã nguồn khó đọc hơn.
    D. Tự động bảo mật trang web.

    59. Đâu là lợi ích chính của việc sử dụng hệ thống quản lý phiên bản (Version Control System) như Git trong phát triển web?

    A. Tự động tạo bản sao lưu của mã nguồn và cho phép theo dõi thay đổi, phục hồi các phiên bản trước đó.
    B. Tăng tốc độ tải trang web.
    C. Tự động tối ưu hóa mã nguồn.
    D. Cải thiện bảo mật của trang web.

    60. WebAssembly là gì và lợi ích chính của nó trong lập trình web là gì?

    A. Một ngôn ngữ lập trình mới để thay thế JavaScript.
    B. Một định dạng mã bytecode cho phép chạy mã hiệu suất cao trong trình duyệt web.
    C. Một framework JavaScript để xây dựng giao diện người dùng.
    D. Một công cụ để tối ưu hóa hình ảnh trên trang web.

    61. Trong ngữ cảnh của web performance, ‘lazy loading’ là gì?

    A. Việc tải tất cả các tài nguyên của trang web cùng một lúc.
    B. Việc chỉ tải các tài nguyên cần thiết khi chúng thực sự cần thiết (ví dụ: hình ảnh chỉ được tải khi người dùng cuộn xuống vị trí của chúng).
    C. Việc tải tài nguyên từ các nguồn khác nhau.
    D. Việc mã hóa tài nguyên để bảo mật.

    62. Trong HTML, thẻ nào được sử dụng để tạo một liên kết?

    A. thẻ link
    B. thẻ a
    C. thẻ href
    D. thẻ url

    63. Trong CSS, thuộc tính `display: flex` được sử dụng để làm gì?

    A. Để tạo các hiệu ứng động.
    B. Để tạo một layout linh hoạt và dễ dàng kiểm soát vị trí các phần tử.
    C. Để tạo các bảng biểu.
    D. Để ẩn các phần tử.

    64. Sự khác biệt chính giữa `GET` và `POST` trong các phương thức HTTP là gì?

    A. `GET` được sử dụng để lấy dữ liệu, trong khi `POST` được sử dụng để gửi dữ liệu lên máy chủ.
    B. `POST` được sử dụng để lấy dữ liệu, trong khi `GET` được sử dụng để gửi dữ liệu lên máy chủ.
    C. Không có sự khác biệt, cả hai đều có thể được sử dụng để lấy và gửi dữ liệu.
    D. `GET` an toàn hơn `POST`.

    65. Trong ngữ cảnh của SEO (Search Engine Optimization), ‘long-tail keyword’ là gì?

    A. Một từ khóa rất ngắn, thường chỉ có một hoặc hai từ.
    B. Một cụm từ khóa dài và cụ thể, thường được sử dụng để nhắm mục tiêu đến một đối tượng hẹp hơn.
    C. Một từ khóa phổ biến được nhiều người tìm kiếm.
    D. Một từ khóa được sử dụng trong tên miền của trang web.

    66. Đâu là một lợi ích của việc sử dụng WebSockets thay vì HTTP polling?

    A. WebSockets tiêu thụ ít tài nguyên máy chủ hơn và cung cấp giao tiếp thời gian thực hiệu quả hơn.
    B. WebSockets dễ dàng triển khai hơn HTTP polling.
    C. WebSockets tương thích với tất cả các trình duyệt cũ.
    D. WebSockets an toàn hơn HTTP polling.

    67. Trong React, Virtual DOM có vai trò gì?

    A. Thay thế hoàn toàn DOM thực tế.
    B. Giúp React theo dõi các thay đổi và cập nhật chỉ những phần cần thiết của DOM thực tế, từ đó cải thiện hiệu suất.
    C. Lưu trữ dữ liệu người dùng.
    D. Quản lý các route trong ứng dụng.

    68. Đâu là một cách để ngăn chặn tấn công CSRF (Cross-Site Request Forgery)?

    A. Sử dụng HTTPS.
    B. Áp dụng xác thực hai yếu tố.
    C. Sử dụng token CSRF.
    D. Mã hóa dữ liệu.

    69. Trong JavaScript, closure là gì?

    A. Một hàm không có tham số.
    B. Một hàm có thể truy cập các biến trong phạm vi bên ngoài của nó, ngay cả sau khi hàm bên ngoài đã kết thúc.
    C. Một đối tượng chứa các thuộc tính và phương thức.
    D. Một vòng lặp vô hạn.

    70. Đâu là một lợi ích của việc sử dụng framework CSS như Bootstrap hoặc Tailwind CSS?

    A. Tăng tốc độ phát triển web bằng cách cung cấp các thành phần giao diện người dùng được xây dựng sẵn.
    B. Tự động viết mã JavaScript.
    C. Tối ưu hóa SEO cho trang web.
    D. Bảo vệ trang web khỏi tấn công XSS.

    71. Chức năng chính của một CDN (Content Delivery Network) là gì?

    A. Cung cấp dịch vụ lưu trữ web miễn phí.
    B. Tăng tốc độ tải trang web bằng cách phân phối nội dung đến nhiều máy chủ trên toàn thế giới.
    C. Bảo vệ trang web khỏi tấn công DDoS.
    D. Tự động tạo mã HTML và CSS cho trang web.

    72. Trong lập trình web, API (Application Programming Interface) được sử dụng để làm gì?

    A. Tạo giao diện người dùng đẹp mắt.
    B. Cho phép các ứng dụng khác nhau giao tiếp và trao đổi dữ liệu với nhau.
    C. Tối ưu hóa hiệu suất trang web.
    D. Bảo vệ trang web khỏi các cuộc tấn công.

    73. Trong kiến trúc RESTful, phương thức HTTP nào được sử dụng để cập nhật một phần tài nguyên?

    A. GET
    B. POST
    C. PUT
    D. PATCH

    74. Trong CSS, thuộc tính `box-sizing` với giá trị `border-box` có tác dụng gì?

    A. Kích thước của phần tử bao gồm cả border và padding.
    B. Kích thước của phần tử chỉ bao gồm content.
    C. Kích thước của phần tử chỉ bao gồm content và padding.
    D. Kích thước của phần tử chỉ bao gồm content và border.

    75. Trong phát triển web, thuật ngữ ‘code splitting’ đề cập đến điều gì?

    A. Việc chia sẻ mã nguồn với cộng đồng.
    B. Việc chia mã ứng dụng thành các phần nhỏ hơn và tải chúng theo yêu cầu, giúp giảm thời gian tải trang ban đầu.
    C. Việc viết mã theo phong cách ngắn gọn nhất có thể.
    D. Việc sử dụng nhiều ngôn ngữ lập trình khác nhau trong cùng một dự án.

    76. Trong JavaScript, `Promise` đượ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.
    C. Để tạo các hàm đồng bộ.
    D. Để tối ưu hóa hiệu suất trang web.

    77. Trong lập trình web, thuật ngữ ‘Responsive Design’ (Thiết kế đáp ứng) đề cập đến điều gì?

    A. Thiết kế website chỉ hoạt động trên các thiết bị di động.
    B. Thiết kế website tự động điều chỉnh bố cục và nội dung để phù hợp với kích thước màn hình của nhiều thiết bị khác nhau.
    C. Thiết kế website sử dụng hình ảnh động và hiệu ứng phức tạp.
    D. Thiết kế website chỉ sử dụng các công nghệ mới nhất như WebAssembly.

    78. Trong HTML5, thẻ “ được sử dụng để làm gì?

    A. Để tạo các bảng biểu.
    B. Để vẽ đồ họa và hình ảnh động thông qua JavaScript.
    C. Để nhúng video.
    D. Để tạo các form.

    79. Đâu là một lợi ích của việc sử dụng microservices architecture trong phát triển web?

    A. Đơn giản hóa việc triển khai và bảo trì ứng dụng.
    B. Cho phép các nhóm phát triển làm việc độc lập trên các phần khác nhau của ứng dụng.
    C. Tăng tốc độ tải trang web.
    D. Giảm chi phí lưu trữ.

    80. Trong CSS, thuộc tính `z-index` được sử dụng để làm gì?

    A. Điều chỉnh kích thước của phần tử.
    B. Điều chỉnh vị trí của phần tử theo trục z (độ sâu).
    C. Điều chỉnh màu sắc của phần tử.
    D. Điều chỉnh độ trong suốt của phần tử.

    81. Đâu là một cách để cải thiện khả năng truy cập (accessibility) của một trang web?

    A. Sử dụng màu sắc tương phản cao.
    B. Sử dụng hình ảnh động liên tục.
    C. Sử dụng kích thước font chữ nhỏ.
    D. Tắt hỗ trợ bàn phím.

    82. Trong JavaScript, `async` và `await` được sử dụng để làm gì?

    A. Để tạo các hàm đồng bộ.
    B. Để làm cho mã bất đồng bộ dễ đọc và dễ viết hơn.
    C. Để tối ưu hóa hiệu suất trang web.
    D. Để tạo các biến toàn cục.

    83. Đâu là một cách để bảo vệ trang web khỏi tấn công SQL Injection?

    A. Sử dụng HTTPS.
    B. Sử dụng prepared statements hoặc parameterized queries.
    C. Áp dụng xác thực hai yếu tố.
    D. Mã hóa dữ liệu.

    84. Trong ngữ cảnh của bảo mật web, XSS là viết tắt của?

    A. Cross-Site Scripting.
    B. XML Site Syntax.
    C. eXecutable Server Scripts.
    D. Extended Style Sheets.

    85. Trong Node.js, `npm` là viết tắt của?

    A. Node Package Manager.
    B. Node Process Manager.
    C. New Project Module.
    D. Node Programming Model.

    86. Sự khác biệt chính giữa cookie và localStorage là gì?

    A. Cookie chỉ có thể lưu trữ dữ liệu nhỏ, trong khi localStorage có thể lưu trữ nhiều dữ liệu hơn.
    B. Cookie được lưu trữ trên máy chủ, trong khi localStorage được lưu trữ trên trình duyệt của người dùng.
    C. Cookie tự động hết hạn sau một thời gian, trong khi localStorage không có thời gian hết hạn mặc định.
    D. Tất cả các đáp án trên.

    87. Phương pháp nào sau đây được sử dụng để tối ưu hóa hiệu suất trang web?

    A. Sử dụng hình ảnh có độ phân giải cao.
    B. Giảm thiểu số lượng HTTP request.
    C. Sử dụng nhiều font chữ khác nhau.
    D. Tải tất cả JavaScript ở phần đầu trang.

    88. Đâu là mục đích chính của việc sử dụng CSS preprocessor (ví dụ: Sass, Less)?

    A. Tăng tốc độ tải trang web.
    B. Cải thiện khả năng tương thích giữa các trình duyệt.
    C. Mở rộng khả năng của CSS bằng cách thêm các tính năng như biến, mixin, và hàm.
    D. Thay thế hoàn toàn CSS bằng một ngôn ngữ mới.

    89. Đâu là một lợi ích chính của việc sử dụng hệ thống quản lý phiên bản (ví dụ: Git) trong phát triển web?

    A. Tự động tối ưu hóa mã nguồn.
    B. Cho phép nhiều nhà phát triển làm việc cùng nhau trên cùng một dự án một cách hiệu quả và quản lý các thay đổi.
    C. Tự động tạo tài liệu cho dự án.
    D. Tăng cường bảo mật cho trang web.

    90. Trong JavaScript, sự khác biệt chính giữa `==` và `===` là gì?

    A. `==` so sánh giá trị, trong khi `===` so sánh giá trị và kiểu dữ liệu.
    B. `===` so sánh giá trị, trong khi `==` so sánh giá trị và kiểu dữ liệu.
    C. Không có sự khác biệt, cả hai đều so sánh giá trị và kiểu dữ liệu.
    D. Không có sự khác biệt, cả hai đều chỉ so sánh giá trị.

    91. Trong HTML, thuộc tính `alt` của thẻ `img` được sử dụng để làm gì?

    A. Để chỉ định đường dẫn của hình ảnh.
    B. Để cung cấp văn bản thay thế cho hình ảnh nếu hình ảnh không tải được.
    C. Để thay đổi kích thước của hình ảnh.
    D. Để thêm hiệu ứng động cho hình ảnh.

    92. 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 kích thước màn hình của thiết bị.
    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 HTML và CSS, không có JavaScript.

    93. Chức năng chính của một ‘router’ trong một ứng dụng web là gì?

    A. Quản lý kết nối đến cơ sở dữ liệu.
    B. Điều hướng người dùng đến các trang khác nhau dựa trên URL.
    C. Tạo hiệu ứng động cho trang web.
    D. Xác thực người dùng.

    94. Khái niệm ‘Single Page Application’ (SPA) đề cập đến loại ứng dụng web nào?

    A. Ứng dụng chỉ có một trang HTML duy nhất và tải nội dung động bằng JavaScript.
    B. Ứng dụng chỉ dành cho thiết bị di động.
    C. Ứng dụng không yêu cầu kết nối internet.
    D. Ứng dụng chỉ sử dụng HTML và CSS.

    95. Cơ chế CORS (Cross-Origin Resource Sharing) được sử dụng để giải quyết vấn đề gì trong bảo mật web?

    A. Ngăn chặn tấn công XSS.
    B. Cho phép trình duyệt thực hiện các yêu cầu HTTP đến một domain khác với domain của trang web hiện tại.
    C. Ngăn chặn tấn công SQL injection.
    D. Bảo vệ trang web khỏi tấn công DDoS.

    96. Mục đích của việc sử dụng `viewport` meta tag trong HTML là gì?

    A. Để xác định ngôn ngữ của trang web.
    B. Để kiểm soát cách trình duyệt hiển thị trang web trên các thiết bị di động.
    C. Để thêm biểu tượng favicon cho trang web.
    D. Để xác định tiêu đề của trang web.

    97. Sự khác biệt chính giữa ‘progressive enhancement’ và ‘graceful degradation’ trong thiết kế web là gì?

    A. ‘Progressive enhancement’ bắt đầu với các tính năng cơ bản và thêm các tính năng nâng cao cho các trình duyệt hiện đại, trong khi ‘graceful degradation’ bắt đầu với tất cả các tính năng và đảm bảo rằng trang web vẫn hoạt động trên các trình duyệt cũ.
    B. ‘Progressive enhancement’ chỉ dành cho thiết bị di động, trong khi ‘graceful degradation’ chỉ dành cho máy tính để bàn.
    C. Không có sự khác biệt, cả hai đều là các phương pháp thiết kế web lỗi thời.
    D. ‘Progressive enhancement’ sử dụng JavaScript, trong khi ‘graceful degradation’ sử dụng CSS.

    98. Trong lập trình web, thuật ngữ ‘callback function’ dùng để chỉ điều gì?

    A. Một hàm được gọi trước khi trang web tải xong.
    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 kia hoàn thành.
    C. Một hàm được sử dụng để tạo hiệu ứng động.
    D. Một hàm được sử dụng để xác thực người dùng.

    99. Khi nào nên sử dụng kỹ thuật ‘lazy loading’ cho hình ảnh trên trang web?

    A. Khi muốn tải tất cả hình ảnh cùng một lúc.
    B. Khi muốn tải hình ảnh chỉ khi chúng xuất hiện trong viewport của người dùng.
    C. Khi muốn mã hóa hình ảnh.
    D. Khi muốn tạo hiệu ứng động cho hình ảnh.

    100. Sự khác biệt chính giữa `cookie` và `localStorage` trong trình duyệt web là gì?

    A. `cookie` chỉ lưu trữ dữ liệu phiên, trong khi `localStorage` lưu trữ dữ liệu vĩnh viễn.
    B. `cookie` lưu trữ dữ liệu trên máy chủ, trong khi `localStorage` lưu trữ dữ liệu trên trình duyệt người dùng.
    C. `cookie` có dung lượng lưu trữ nhỏ hơn và được gửi kèm trong mỗi yêu cầu HTTP, trong khi `localStorage` có dung lượng lớn hơn và chỉ được truy cập bởi JavaScript.
    D. `cookie` chỉ có thể lưu trữ chuỗi, trong khi `localStorage` có thể lưu trữ mọi loại dữ liệu.

    101. Trong ReactJS, khái niệm ‘component’ dùng để chỉ điều gì?

    A. Một hàm JavaScript đơn giản.
    B. Một phần độc lập, tái sử dụng được của giao diện người dùng.
    C. Một đối tượng CSS để tạo kiểu cho trang web.
    D. Một kết nối đến cơ sở dữ liệu.

    102. Mục đích của việc sử dụng ‘minification’ trong lập trình 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 JavaScript và CSS bằng cách loại bỏ các khoảng trắng và ký tự không cần thiết.
    C. Để mã hóa mã nguồn.
    D. Để thêm comments vào mã nguồn.

    103. Thuật ngữ ‘SEO’ (Search Engine Optimization) liên quan đến khía cạnh nào của lập trình web?

    A. Viết mã JavaScript hiệu quả.
    B. 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. Bảo mật trang web khỏi các cuộc tấn công.
    D. Thiết kế giao diện người dùng hấp dẫn.

    104. Trong CSS, thuộc tính `z-index` được sử dụng để làm gì?

    A. Để tạo hiệu ứng đổ bóng cho các phần tử.
    B. Để xác định thứ tự xếp chồng của các phần tử HTML.
    C. Để thay đổi kích thước của phần tử.
    D. Để thay đổi màu sắc của phần tử.

    105. Trong JavaScript, ‘closure’ là gì?

    A. Một hàm không có tham số.
    B. Một hàm có thể truy cập các biến trong phạm vi (scope) của hàm cha, ngay cả sau khi hàm cha đã thực thi xong.
    C. Một cách để tạo đối tượng trong JavaScript.
    D. Một hàm được định nghĩa bên trong một đối tượng.

    106. Công cụ nào sau đây giúp tự động hóa các tác vụ xây dựng, kiểm tra và triển khai ứng dụng web?

    A. Git
    B. Docker
    C. CI/CD (Continuous Integration/Continuous Deployment)
    D. npm

    107. Thuật ngữ ‘API’ (Application Programming Interface) dùng để chỉ điều gì trong lập trình web?

    A. Một ngôn ngữ lập trình mới.
    B. Một tập hợp các quy tắc và giao thức cho phép các ứng dụng giao tiếp với nhau.
    C. Một công cụ để thiết kế giao diện người dùng.
    D. Một phương pháp để tối ưu hóa cơ sở dữ liệu.

    108. Trong ngữ cảnh của bảo mật web, XSS là viết tắt của điều gì?

    A. Cross-Site Scripting
    B. XML Syntax Standard
    C. eXecutable Server Script
    D. Extended Style Sheet

    109. 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 giá trị và kiểu dữ liệu.
    B. `==` so sánh kiểu dữ liệu, trong khi `===` so sánh giá trị.
    C. `==` gán giá trị, trong khi `===` so sánh giá trị.
    D. Không có sự khác biệt, cả hai đều so sánh giá trị.

    110. Trong CSS, Box Model bao gồm những thành phần nào?

    A. Content, Padding, Border, Margin.
    B. Width, Height, Color, Background.
    C. Font, Text, Align, Size.
    D. Position, Float, Clear, Display.

    111. CDN (Content Delivery Network) giúp cải thiện hiệu suất trang web như thế nào?

    A. Bằng cách nén mã HTML, CSS và JavaScript.
    B. Bằng cách lưu trữ và phân phối nội dung trang web từ các máy chủ trên khắp thế giới, giảm độ trễ khi tải trang.
    C. Bằng cách tối ưu hóa hình ảnh trên trang web.
    D. Bằng cách loại bỏ các plugin không cần thiết.

    112. Phương pháp HTTP nào thường được sử dụng để gửi dữ liệu từ trình duyệt đến máy chủ khi người dùng gửi một biểu mẫu?

    A. GET
    B. PUT
    C. DELETE
    D. POST

    113. Trong lập trình web, thuật ngữ ‘microservices’ đề cập đến điều gì?

    A. Một kiến trúc ứng dụng trong đó ứng dụng được cấu trúc như một tập hợp các dịch vụ nhỏ, độc lập.
    B. Một phương pháp để viết mã JavaScript ngắn gọn.
    C. Một công cụ để thiết kế giao diện người dùng.
    D. Một phương pháp để tối ưu hóa cơ sở dữ liệu.

    114. Trong ngữ cảnh của cơ sở dữ liệu, ‘normalization’ là gì?

    A. Quá trình sao lưu dữ liệu.
    B. Quá trình tối ưu hóa truy vấn.
    C. Quá trình tổ chức dữ liệu trong cơ sở dữ liệu để giảm sự dư thừa và cải thiện tính nhất quán.
    D. Quá trình mã hóa dữ liệu.

    115. Mục đích của việc sử dụng ‘code splitting’ trong lập trình web là gì?

    A. Để mã hóa mã nguồn.
    B. Để chia mã nguồn thành các phần nhỏ hơn, giúp tải trang nhanh hơn và cải thiện hiệu suất.
    C. Để gộp nhiều tệp JavaScript thành một tệp duy nhất.
    D. Để thêm comments vào mã nguồn.

    116. Trong JavaScript, ‘Promise’ là gì?

    A. Một cách để tạo đối tượng.
    B. Một đối tượng đại diện cho kết quả cuối cùng của một hoạt động bất đồng bộ.
    C. Một kiểu dữ liệu mới trong JavaScript.
    D. Một cách để định nghĩa hàm.

    117. Trong CSS, thuộc tính `position: sticky` hoạt động như thế nào?

    A. Phần tử luôn cố định ở một vị trí trên màn hình.
    B. Phần tử ban đầu hoạt động như `relative`, nhưng chuyển thành `fixed` khi người dùng cuộn đến một vị trí nhất định.
    C. Phần tử được định vị tương đối so với phần tử cha gần nhất.
    D. Phần tử không bị ảnh hưởng bởi các thuộc tính `top`, `right`, `bottom`, `left`.

    118. Công cụ nào sau đây được sử dụng để kiểm soát phiên bản mã nguồn (version control)?

    A. Docker
    B. Git
    C. npm
    D. Webpack

    119. Sự khác biệt giữa `sessionStorage` và `localStorage` trong JavaScript 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. `sessionStorage` lưu trữ dữ liệu chỉ trong một phiên trình duyệt, trong khi `localStorage` lưu trữ dữ liệu cho đến khi bị xóa thủ công.
    C. Không có sự khác biệt, cả hai đều lưu trữ dữ liệu vĩnh viễn.
    D. Không có sự khác biệt, cả hai đều lưu trữ dữ liệu chỉ trong một phiên.

    120. Công cụ nào sau đây thường được sử dụng để quản lý các thư viện và dependencies trong một dự án JavaScript?

    A. Git
    B. npm (Node Package Manager)
    C. Docker
    D. Webpack

    121. Khi nào nên sử dụng phương thức `GET` thay vì `POST` trong một biểu mẫu HTML?

    A. Khi gửi dữ liệu nhạy cảm như mật khẩu.
    B. Khi dữ liệu cần được lưu vào bộ nhớ cache của trình duyệt.
    C. Khi dữ liệu có kích thước lớn.
    D. Khi thực hiện các thao tác cập nhật hoặc xóa dữ liệu.

    122. Thuật ngữ ‘CORS’ (Cross-Origin Resource Sharing) đề cập đến điều gì?

    A. Một phương pháp để tăng tốc độ tải trang.
    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 origin (domain) khác.
    C. Một kỹ thuật để tối ưu hóa hình ảnh trên trang web.
    D. Một giao thức để truyền dữ liệu an toàn qua internet.

    123. Điểm khác biệt chính giữa ‘state’ và ‘props’ trong React là gì?

    A. ‘State’ là dữ liệu tĩnh, trong khi ‘props’ là dữ liệu động.
    B. ‘Props’ là dữ liệu tĩnh, trong khi ‘state’ là dữ liệu động và có thể thay đổi trong component.
    C. Không có sự khác biệt, cả hai đều là dữ liệu động.
    D. ‘State’ chỉ được sử dụng trong các component class, trong khi ‘props’ chỉ được sử dụng trong các functional component.

    124. Phương pháp nào sau đây giúp bảo vệ ứng dụng web khỏi tấn công ‘SQL Injection’?

    A. Sử dụng HTTPS.
    B. Sử dụng prepared statements hoặc parameterized queries.
    C. Sử dụng CORS.
    D. Sử dụng Content Security Policy (CSP).

    125. Trong JavaScript, hàm `parseInt()` được sử dụng để làm gì?

    A. Chuyển đổi một chuỗi thành một số nguyên.
    B. Làm tròn một số thập phân đến số nguyên gần nhất.
    C. Tạo một số ngẫu nhiên.
    D. Kiểm tra xem một biến có phải là một số nguyên hay không.

    126. 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 giá trị và kiểu dữ liệu.
    B. `===` so sánh giá trị, trong khi `==` so sánh giá trị và kiểu dữ liệu.
    C. Không có sự khác biệt, cả hai đều so sánh giá trị.
    D. `==` chỉ so sánh các số, trong khi `===` so sánh các chuỗi.

    127. Thuộc tính `z-index` trong CSS được sử dụng để làm gì?

    A. Để tạo hiệu ứng bóng đổ cho phần tử.
    B. Để xác định thứ tự xếp chồng của các phần tử HTML.
    C. Để thay đổi kích thước của phần tử.
    D. Để làm mờ phần tử.

    128. Trong ngữ cảnh bảo mật web, ‘Cross-Site Scripting (XSS)’ là gì?

    A. Một loại tấn công từ chối dịch vụ (DoS).
    B. Một kỹ thuật để vượt qua xác thực người dùng.
    C. Một lỗ hổng bảo mật cho phép kẻ tấn công chèn mã độc vào trang web để thực thi trên trình duyệt của người dùng khác.
    D. Một phương pháp để mã hóa dữ liệu trên máy chủ web.

    129. Thuộc tính CSS nào được sử dụng để kiểm soát khoảng cách giữa các dòng văn bản?

    A. text-spacing
    B. line-height
    C. word-spacing
    D. letter-spacing

    130. Công cụ nào sau đây giúp tự động hóa quy trình xây dựng, kiểm tra và triển khai ứng dụng web?

    A. Web server
    B. CI/CD pipeline
    C. Text editor
    D. Web browser

    131. WebSockets khác biệt với HTTP như thế nào?

    A. WebSockets là một giao thức một chiều, trong khi HTTP là giao thức hai chiều.
    B. WebSockets cung cấp kết nối song công (full-duplex) liên tục giữa client và server, trong khi HTTP là giao thức yêu cầu-phản hồi.
    C. WebSockets chỉ được sử dụng cho truyền dữ liệu văn bản, trong khi HTTP có thể truyền bất kỳ loại dữ liệu nào.
    D. WebSockets an toàn hơn HTTP vì nó sử dụng mã hóa mặc định.

    132. Trong CSS, ‘Flexbox’ được sử dụng để làm gì?

    A. Để tạo hiệu ứng động cho phần tử.
    B. Để thiết kế bố cục trang web một cách linh hoạt và dễ dàng.
    C. Để quản lý các font chữ trên trang web.
    D. Để tạo các hình ảnh động.

    133. Ngôn ngữ nào sau đây thường được sử dụng để tạo cấu trúc và nội dung cho một trang web?

    A. JavaScript
    B. Python
    C. HTML
    D. CSS

    134. Đ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 duy nhất.
    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 duy nhất.
    C. `localStorage` chỉ có thể lưu trữ chuỗi, trong khi `sessionStorage` có thể lưu trữ bất kỳ loại dữ liệu nào.
    D. `sessionStorage` an toàn hơn `localStorage` vì dữ liệu được mã hóa.

    135. Framework JavaScript nào sau đây tập trung vào việc xây dựng giao diện người dùng (UI) một cách khai báo và dựa trên components?

    A. Node.js
    B. React
    C. Express.js
    D. MongoDB

    136. Thuật ngữ ‘Single Page Application’ (SPA) trong lập trình web đề cập đến điều gì?

    A. Một trang web chỉ có một trang duy nhất.
    B. Một ứng dụng web tải một trang HTML duy nhất và cập nhật nội dung một cách động thông qua JavaScript.
    C. Một ứng dụng web chỉ chạy trên một trình duyệt duy nhất.
    D. Một trang web được thiết kế để hiển thị tốt trên một thiết bị duy nhất.

    137. Mục đích chính của việc sử dụng ‘virtual DOM’ trong các framework JavaScript như React là gì?

    A. Để tăng cường bảo mật cho ứng dụng.
    B. Để đơn giản hóa việc quản lý trạng thái của ứng dụng.
    C. Để tối ưu hóa hiệu suất bằng cách giảm thiểu số lượng thao tác trực tiếp vào DOM thực.
    D. Để cho phép ứng dụng chạy trên server-side rendering.

    138. Kỹ thuật ‘lazy loading’ được sử dụng để làm gì trong tối ưu hóa website?

    A. Để trì hoãn việc tải các tài nguyên không cần thiết cho đến khi chúng thực sự cần thiết.
    B. Để tải tất cả các tài nguyên cùng một lúc để tăng tốc độ tải trang.
    C. Để nén các tài nguyên để giảm kích thước tệp.
    D. Để lưu trữ các tài nguyên trên CDN.

    139. Mục đích của việc sử dụng preprocessor (ví dụ: Sass, Less) trong CSS là gì?

    A. Để tăng tốc độ tải trang web.
    B. Để thêm tính tương tác vào trang web.
    C. Để mở rộng khả năng của CSS bằng các tính năng như biến, mixin, và nesting.
    D. Để mã hóa CSS để bảo vệ khỏi việc sao chép.

    140. Mục đích chính của việc sử dụng ‘code splitting’ trong ứng dụng web là gì?

    A. Để tăng cường bảo mật cho ứng dụng.
    B. Để giảm kích thước của bundle ban đầu và cải thiện thời gian tải trang.
    C. Để đơn giản hóa việc quản lý trạng thái của ứng dụng.
    D. Để cho phép ứng dụng chạy trên server-side rendering.

    141. Trong lập trình web, thuật ngữ ‘responsive design’ (thiết kế đáp ứng) đề cập đến điều gì?

    A. Thiết kế trang web chỉ hoạt động trên các 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 chỉ sử dụng hình ảnh có độ phân giải cao.
    D. Thiết kế trang web yêu cầu người dùng phải phóng to hoặc thu nhỏ để xem nội dung.

    142. Thuật ngữ ‘SEO’ trong lập trình web đề cập đến điều gì?

    A. Security Enhancement Optimization
    B. Search Engine Optimization
    C. Server Execution Optimization
    D. Software Engineering Objectives

    143. Trong lập trình web, ‘progressive enhancement’ là gì?

    A. Một kỹ thuật để tăng cường bảo mật cho ứng dụng.
    B. Một phương pháp thiết kế web tập trung vào việc cung cấp trải nghiệm cơ bản cho tất cả người dùng, sau đó tăng cường dần trải nghiệm cho các trình duyệt và thiết bị hiện đại hơn.
    C. Một kỹ thuật để tối ưu hóa hình ảnh trên trang web.
    D. Một giao thức để truyền dữ liệu an toàn qua internet.

    144. Trong JavaScript, closures là gì?

    A. Các hàm không có tham số.
    B. Các hàm được định nghĩa bên trong các hàm khác và có thể truy cập các biến của hàm bên ngoài.
    C. Các hàm chỉ có thể được gọi một lần.
    D. Các hàm được sử dụng để xử lý lỗi.

    145. Trong lập trình web, thuật ngữ ‘API’ thường được dùng để chỉ điều gì?

    A. Advanced Programming Interface.
    B. Application Programming Interface.
    C. Automated Process Integration.
    D. Algorithm Performance Index.

    146. 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. Tối ưu hóa hình ảnh
    B. Sử dụng CDN (Content Delivery Network)
    C. Gộp các tệp CSS và JavaScript
    D. Tất cả các đáp án trên

    147. Phương pháp nào sau đây được sử dụng để lưu trữ dữ liệu trên trình duyệt web của người dùng?

    A. Cookies
    B. Server-side sessions
    C. Cloud storage
    D. Database

    148. CDN (Content Delivery Network) giúp cải thiện hiệu suất website như thế nào?

    A. Bằng cách mã hóa dữ liệu giữa server và client.
    B. Bằng cách lưu trữ và phân phối nội dung website từ nhiều server trên toàn thế giới.
    C. Bằng cách tự động tối ưu hóa code HTML, CSS và JavaScript.
    D. Bằng cách bảo vệ website khỏi các cuộc tấn công DDoS.

    149. Trong ngữ cảnh của CSS, ‘Specificity’ (độ ưu tiên) là gì?

    A. Một thuộc tính để xác định kích thước của phần tử.
    B. Một cách để tạo hiệu ứng động cho phần tử.
    C. Một hệ thống để xác định quy tắc CSS nào sẽ được áp dụng cho một phần tử khi có nhiều quy tắc xung đột.
    D. Một phương pháp để nhóm các quy tắc CSS lại với nhau.

    150. JSON (JavaScript Object Notation) thường được sử dụng để làm gì trong phát triển web?

    A. Để tạo hiệu ứng động trên trang web.
    B. Để định dạng và tạo kiểu cho nội dung trang web.
    C. Để truyền dữ liệu giữa server và client.
    D. Để quản lý cơ sở dữ liệu.

    Số câu đã làm: 0/0
    Thời gian còn lại: 00:00:00
    • Đã làm
    • Chưa làm
    • Cần kiểm tra lại

    Về Tài Liệu Trọn Đời

    Tài Liệu Trọn Đời - Blog cá nhân, tài liệu học tập, khoa học, công nghệ, thủ thuật, chia sẻ mọi kiến thức, lĩnh vực khác nhau đến với bạn đọc.

    Gmail: info.tailieutrondoi@gmail.com

    Địa chỉ: 127 Đ Nguyễn Văn Tăng, Long Thạnh Mỹ, Thủ Đức, Hồ Chí Minh 700000, Việt Nam

    Giờ làm việc: T2-CN: 09:00 – 17:00

    Maps

    Miễn Trừ Trách Nhiệm

    Tài Liệu Trọn Đời - Blog được xây dựng nhằm mục đích thử nghiệm, tham khảo, hỗ trợ học tập và nghiên cứu.

    Tài Liệu Trọn Đời không chịu trách nhiệm dưới bất kỳ hình thức nào đối với thiệt hại trực tiếp hoặc gián tiếp phát sinh từ việc sử dụng hoặc áp dụng các nội dung trên trang web.

    Các câu hỏi và đáp án trong danh mục "Trắc nghiệm" được biên soạn nhằm mục đích hỗ trợ học tập và tra cứu thông tin. Đây KHÔNG phải là tài liệu chính thức hay đề thi do bất kỳ cơ sở giáo dục hoặc tổ chức cấp chứng chỉ chuyên ngành nào ban hành.

    Website không chịu trách nhiệm về độ chính xác tuyệt đối của nội dung cũng như mọi quyết định được đưa ra từ việc sử dụng kết quả trắc nghiệm hoặc các thông tin trong bài viết trên Website.

    Chịu Trách Nhiệm Nội Dung

    Blogger: Tài Liệu Trọn Đời

    Mọi vấn đề liên quan đến bản quyền nội dung vui lòng liên hệ qua Gmail: info.tailieutrondoi@gmail.com

    Social

    • X
    • LinkedIn
    • Flickr
    • YouTube
    • Pinterest

    Website Cùng Hệ Thống

    Phần Mềm Trọn Đời - Download Tải Phần Mềm Miễn Phí Kiến Thức Live - Tin Tức | Kiến Thức Cuộc Sống | Công Nghệ All Thing Share - Sharing | Knowledge | Technology | Tips | Pets | Life All Thing Pet – We Love Pets Trending New 24h - Cập Nhật Xu Hướng | Trend | News 24h
    Copyright © 2025 Tài Liệu Trọn Đời
    Back to Top

    Bạn ơi!!! Để xem được kết quả, bạn vui lòng làm nhiệm vụ nhỏ xíu này nha

    HƯỚNG DẪN TÌM MẬT KHẨU

    Đang tải nhiệm vụ...

    Bước 1: Mở tab mới và truy cập Google.com. Sau đó tìm kiếm chính xác từ khóa sau:

    Bước 2: Tìm và click vào kết quả có trang web giống như hình ảnh dưới đây:

    Hướng dẫn tìm kiếm

    Bước 3: Kéo xuống cuối trang đó để tìm mật khẩu như hình ảnh hướng dẫn:

    Hướng dẫn lấy mật khẩu

    Nếu tìm không thấy mã bạn có thể Đổi nhiệm vụ để lấy mã khác nhé.