Theo dõi chúng tôi Facebook Truy cập trang Facebook

Một số câu hỏi phỏng vấn dành cho Front-end Developer và gợi ý trả lời

1. Các Kỹ năng kỹ thuật (Technical Skill) và Kỹ năng cần thiết khác để trở thành Front-end Developer là gì?

Là một Front-end Developer, bạn cần nắm vững những kiến thức nền tảng như:

  • HTML, CSS, JavaScript – ba trụ cột cơ bản để xây dựng giao diện web.
  • jQuery – thư viện JavaScript giúp thao tác DOM nhanh gọn hơn.

Bên cạnh đó, bạn cũng nên trang bị thêm các kỹ năng và kiến thức sau:

  • Kinh nghiệm với CMS như WordPress, Drupal hoặc Joomla.
  • Kiến thức về kiểm thử đa trình duyệt (cross-browser testing).
  • Hiểu về lập trình hướng đối tượng (OOP)PHP.
  • Hiểu cơ bản về SEO và biết sử dụng các công cụ thiết kế như Dreamweaver, Flash.

2. Hãy phân biệt sự khác nhau giữa visibility:hidden; và display:none?

visibility:hidden; – phần tử bị ẩn nhưng vẫn chiếm không gian hiển thị.
display:none; – phần tử bị ẩn và không chiếm không gian hiển thị.

3. Sự khác biệt giữa XHTML và HTML là gì?

XHTML tuân theo cú pháp XML nghiêm ngặt, trong khi HTML thì linh hoạt hơn và dựa trên SGML. XHTML thường yêu cầu đóng thẻ đầy đủ, viết hoa thường chuẩn xác hơn.

4. Tại sao các công ty thường dùng TypeScript thay vì JavaScript?

  • Hỗ trợ lập trình hướng đối tượng mạnh mẽ.
  • Hỗ trợ module, namespace, giúp làm việc nhóm hiệu quả hơn.
  • Có kiểm tra kiểu, phát hiện lỗi sớm.
  • Được hỗ trợ bởi nhiều framework lớn như Angular, Vue, Node.js…

5. Điểm khác nhau của tag <span> và <div> là gì?

<div> là phần tử block, dùng để chia khối nội dung.
<span> là phần tử inline, dùng để định dạng văn bản nhỏ trong dòng.

6. Định nghĩa về CORS

CORS (Cross-Origin Resource Sharing) là cơ chế cho phép trình duyệt gửi request đến domain khác, hữu ích trong việc gọi API giữa các nguồn khác nhau.

7. Có bao nhiêu cách khai báo biến trong CSS? Trình bày về mức độ ưu tiên trong CSS?

  • Inline: viết trực tiếp trong thẻ HTML.
  • Internal: viết trong cặp thẻ <style></style> trong file HTML.
  • External: viết trong file .css riêng biệt và import bằng <link>.

Thứ tự ưu tiên: thẻ > inline > id > class.

8. Phân biệt Type và Interface?

Type có thể mô tả nhiều loại dữ liệu, trong khi Interface thường mô tả cấu trúc của object. Interface cho phép kế thừa nhiều lần, còn Type thì không.

9. Bạn biết gì về BEM? Có nên sử dụng không?

BEM (Block Element Modifier) là quy ước đặt tên class CSS rõ ràng, giúp code dễ đọc, dễ bảo trì và hạn chế trùng tên. Rất nên dùng khi làm việc nhóm hoặc dự án lớn.

10. Phân biệt sự khác nhau giữa Null và Undefined?

Undefined: biến được khai báo nhưng chưa gán giá trị.
Null: là một giá trị rỗng được gán có chủ đích.

11. Làm thế nào để tăng performance cho trang?

  • Dọn dẹp code HTML, CSS, JS.
  • Giảm số lượng request HTTP.
  • Nén ảnh và tài nguyên.
  • Dùng CDN, caching.
  • Tải JavaScript ở cuối trang.

12. PUT và POST khác nhau như thế nào?

POST: tạo mới tài nguyên.
PUT: cập nhật toàn bộ tài nguyên.

13. JavaScript có phải là OOP không?

Có, vì JavaScript hỗ trợ các khái niệm OOP như kế thừa, đóng gói, trừu tượng.

14. Phân biệt Host object và Native object?

Native object: có sẵn trong JavaScript (Array, Object, Function…).
Host object: do môi trường cung cấp (window, DOM API…).

15. Cookies, sessionStorage và localStorage khác nhau thế nào?

  • Cookies: lưu trữ nhỏ, gửi lên server mỗi request.
  • sessionStorage: lưu dữ liệu theo tab, mất khi tab đóng.
  • localStorage: lưu dữ liệu lâu dài, không bị xóa khi đóng tab.

16. Meta tag có ý nghĩa gì? Những tag nào ảnh hưởng SEO?

Meta tag giúp công cụ tìm kiếm hiểu nội dung trang web. Những tag ảnh hưởng SEO gồm:

  • <title>
  • Meta Description
  • Thẻ Heading: h1-h6
  • <strong>, <em>
  • Canonical link

17. Pseudo-class trong CSS là gì?

Là lớp giả giúp định dạng các trạng thái của phần tử như hover, focus, active... Ví dụ: :hover, :first-child.

18. Web Accessibility là gì?

Web Accessibility là thiết kế website để mọi người, kể cả người khuyết tật, đều có thể truy cập và sử dụng được.

19. Bạn có câu hỏi nào dành cho chúng tôi không?

Gợi ý một số câu hỏi:

  • Ai sẽ là người review code cho tôi?
  • Team có các buổi chia sẻ học tập nội bộ không?
  • Quy trình đánh giá công việc như thế nào?
  • Nhóm tôi sẽ hợp tác gồm những ai?

Tổng kết: Trên đây là những câu hỏi thường gặp trong phỏng vấn Front-end Developer. Hy vọng giúp bạn chuẩn bị kỹ và tự tin hơn nhé!

Đăng nhận xét

Cookie Consent
We serve cookies on this site to analyze traffic, remember your preferences, and optimize your experience.
Oops!
It seems there is something wrong with your internet connection. Please connect to the internet and start browsing again.
AdBlock Detected!
We have detected that you are using adblocking plugin in your browser.
The revenue we earn by the advertisements is used to manage this website, we request you to whitelist our website in your adblocking plugin.
Site is Blocked
Sorry! This site is not available in your country.