Ngày đăng: 20/11/2022 | Không có phản hồi
Ngày cập nhật: 18/11/2022
Bạn có phải là một lập trình viên Javascript và chuẩn bị có một buổi phỏng vấn với nhà tuyển dụng để có được một công việc mơ ước. Vậy thì đừng bỏ qua bài viết dưới đây của Glints vì chúng mình sẽ mang đến cho bạn bộ câu hỏi phỏng vấn Javascript hữu ích, giúp bạn tự tin hơn trong bất kỳ buổi phỏng vấn nào sắp tới. Cùng bắt đầu nào.
1. Phép so sánh bằng
Phép so sánh === (!=): Phép so sánh bằng trong Javascript tuân theo quy tắc:
Phép so sánh ==(!=) cũng tuân theo các quy luật như sau:
2. Phép so sánh hơn kém
Phép so sánh hơn kém bao gồm >, <, >=, <= tuân theo các quy tắc sau:
Callback function – hay còn gọi là hàm gọi lại – là một hàm chỉ được thực thi một khi hàm khác đã thực thi xong.
Ví dụ:
function writeBlog(topic, callback) {
alert(`Starting my ${topic} blog.`);
// then execute the callback function that was passed
callback();
}
writeBlog(‘JS’, function() {
alert(‘Finished my blog!’);
});
Nếu bạn chạy đoạn code trên, kết quả sẽ trả về hai thông báo. Thông báo đầu tiên là “Starting my JS blog.” và thông báo thứ hai là: “Finished my blog!”
Toán tử trong JavaScript, có kí hiệu là && sẽ trả về giá trị true nếu cả hai toán hạng là true, ngược lại sẽ trả về false.
Trong JavaScript có hai kiểu dữ liệu: Kiểu nguyên thủy (primitive) và object.
Kiểu nguyên thuỷ là bất biến, một kiểu nguyên thuỷ không phải là object vì vậy chúng không có các method (phương thức) riêng của mình.
Có sáu loại nguyên thủy trong JS:
Toán tử || trả về true nếu 1 trong 2 số hạng là true : a || b.
Undefined nghĩa là không xác định. Giá trị của biến là underfined trong javascript khi bạn khai báo một biến nhưng chưa gán giá trị cho nó.
Null nghĩa là giá trị rỗng hoặc giá trị không tồn tại, một biến null là khi chúng không có giá trị.
Sự khác biệt giữa null và undefined: undefind có kiểu giá trị là undefined nhưng null lại là 1 object.
Falsy values là giá trị trong Javascript mà khi ta ép kiểu về Boolean sẽ cho ra giá trị false.
Tương tự, truthy values là những giá trị mà khi ta ép kiểu về Boolean sẽ cho ra giá trị true.
Có 7 falsy values trong JavaScript:
Một IIFEs – viết tắt của Immediately Invoked Function Express – được thực thi ngay sau khi nó được tạo.
Để kiểm tra một số có phải số nguyên hay không, cách nhanh chóng là sử dụng hàm issInteger. Tuy nhiên cách này sẽ không cho bạn biết số đó là số âm hay số dương.
Cách làm khác là lấy số đo chia số cho 1 và xem có phần dư hay không.
Đọc thêm: Những câu hỏi phỏng vấn ReactJS dành cho mọi vị trí ứng tuyển
Anonymous function – hay còn được biết đến là hàm ẩn danh – là hàm không có tên và được tạo ra trong thời gian ứng dụng đang chạy.
Named function – hay còn gọi là hàm được đặt tên – được sử dụng để gỡ lỗi và tìm kiếm những hàm gây ra lỗi.
Ba giai đoạn của sự lan truyền sự kiện là propagation, capturing sau đó là bubbling.
Đầu tiên, propagation (lan truyền) xảy ra với việc capturing trước. Trong giai đoạn capturing, các sự kiện sẽ truyền từ Window qua DOM tree cho đến khi nó đến đích. Sau đó, phần tử mục tiêu được truy cập và (trong đoạn code này có thể là event.target), giai đoạn bubbling xảy ra.
Kết quả của đoạn code sau trả về false.
Từ khóa this được dùng để đại diện cho một đối tượng. Cụ thể, đối tượng ở đây là đối tượng đang thực thi cose JS hiện tại.
Ví dụ:
function state() {
console.log(this.name);
}
var name = “NY”;
var obj1 = { name: “IN”, state: state };
var obj2 = { name: “CA”, state: state };
state(); // “NY”
obj1.state(); // “IN”
obj2.state(); // “CA”
Math.min () trả về infinity và Math.max () trả về -infinity nếu không có đối số nào được đưa ra. Đây là một phần của đặc tả cho các phương thức min () và max (), và nó có logic đằng sau.
Ví dụ:
Math.min(1)
// 1
Math.min(1, infinity)
// 1
Math.min(1, -infinity)
// -infinity
Nếu -infinity là đối số mặc định của Math.min (), thì mọi kết quả sẽ là -infinity, điều này là vô dụng. Trong khi đó, nếu đối số mặc định là infinity, thì việc thêm bất kỳ đối số nào khác, kết quả sẽ trả về số đó. Đó chính là hành vi mà chúng ta muốn.
Kết quả của việc chuyển đổi kiểu cho ra kết quả 018 – 017 trả về 3. Đây là một trường hợp của số bát phân (octal numbers).
Trong Javascript, tiền tố 0 sẽ chuyển đổi bất kỳ số nào đứng sau thành số bát phân. Tuy nhiên, số 8 không được sử dụng trong hệ bát phân nên với các số có chưa số 8, chúng sẽ trở về số thập phân thông thường.
Do đó 018 – 17 tương đương với 18 (số thường) – 15 (bát phân của 017) và trả về kết quả là 3.
Đọc thêm: Một Vài Dự Đoán Về Xu Hướng Lập Trình Tương Lai
AJAX – Asynchronous JavaScript And XML. AJAX hoạt động như sau: một yêu cầu XHR được tạo bởi Javascript sẽ được gửi đến máy chủ mỗi khi một sự kiện xảy ra trên trang web. Máy chủ sẽ xử xử lý yêu cầu và trả về phản hồi cho trang web và các hành động cần thiếu được thực hiện.
Ưu điểm của AJAX
Nhược điểm của AJAX:
Một Function declaration, hay còn biết đến là khai báo hàm, thường sử dụng từ khóa function, tên của hàm sẽ theo sau.
Ngược lại, một Function Expression, hay còn gọi là biểu thức hàm, bắt đầu bằng var, const hoặc let, theo sau là tên của hàm và toán tử gán =.
Hoisting là việc JavaScript di chuyển khai báo lên đầu mọi scope (phạm vi). Đây là một khía cạnh không xác định của JavaScript, vậy nên để tránh tạo ra lỗi, bạn nên khai báo tất cả các biến ở đầu mọi scope.
Hoisting chỉ đơn giản là việc bạn có thể sử dụng một biến trước khi nó được khai báo.
Đọc thêm: Học Lập Trình Web Nên Bắt Đầu Từ Đâu?
Sự khác biệt giữa call() và apply():
Cách sử dụng: Ta sử dụng .bind () khi muốn sửa đổi ngữ cảnh tuy nhiên bạn lại muốn gọi hàm sau này. Sử dụng .call () hoặc .apply () khi bạn muốn sửa đổi ngữ cảnh và gọi hàm ngay lập tức.
Về mặt kỹ thuật, nếu xác định một biến mà không có từ khoá sẽ gây rò rỉ bộ nhớ.
Promise có thể ở một trong ba trạng thái sau:
Ưu điểm của việc sử dụng Promises:
Nhược điểm:a
Trên đây bạn đã cùng Glints tìm hiểu về 20+ câu hỏi phỏng vấn Javascript phổ biến nhất hiện nay. Chúc bạn sẽ tràn đầy tự tin trong buổi phỏng vấn sắp tới của mình và thành công nhận được công việc mơ ước nhé.
Có thể bạn cũng thích
Range Lương Là Gì? Cách Xác Định Range Lương Của Bản Thân Trong Ngành
Huy Kieu - 12/03/2024
Tổng Hợp Các Việc Làm Lương 20 Triệu
Glints Writers - 11/03/2024
Quy Trình Tuyển Dụng Và Những Điều Cần Nắm Rõ
Huy Kieu - 08/03/2024
Trả lời