Câu hỏi phỏng vấn Javascript dưới đây sẽ giúp bạn vượt qua được những câu hỏi của nhà tuyển dụng.
Giới thiệu
Theo một cuộc điều tra cách mạng ẩn danh mà mình tìm hiểu được thì trong cuộc sống có 2 thứ khó hiểu nhất. Đối với nam giới thì đó là phụ nữ, còn đối với lập trình viên thì đó hẳn là javascript rồi.
Javascript là ngôn ngữ không thể thiếu trong thời đại hiện nay. Dù bạn có học ngôn ngữ gì đi chăng nữa thì bạn vẫn cần phải biết về javascript.
Hôm nay mình xin chia sẻ một chút kiến thức về javascript, cụ thể là các câu hỏi phỏng vấn JavaScript mà nhà tuyển dụng thường sẽ hỏi bạn.
Bài viết này mình viết với mục đích dành cho các bạn Intern, Fresher trong quá trình đi phỏng vấn có thể tham khảo vì đây là những câu hỏi liên quan đến javascript mà rất dễ bị “sờ gáy”.
Bắt đầu nào!
Câu hỏi phỏng vấn JavaScript dành cho Intern/ Fresher
#1. Javascript là gì?
#2. Các kiểu dữ liệu trong Javascript?
Ví dụ:
#3. Hàm delete có chức năng gì?
Ví dụ:
var user = { name: 'Vu', age: 18 }; delete student.age; console.log(student) // => { name: 'Vu' }
#4. Phân biệt var, let và const?
Ví dụ:
#5. Strict mode trong javascript là gì?
Ví dụ:
"use strict"; function foo(){ var bar = 'viblo'; return bar; } // Uncaught ReferenceError: bar is not defined bar = 'asia';
#6. this trong javascript là gì?
Ví dụ:
var data = { name: "vu", age: 18, getName: function(){ return this.name; // this = data; } }; console.log(data.getName()) // 'vu'
#7. Khác nhau giữa undefined và null trong javascript?
Ví dụ:
var a; console.log(typeof a) // undefined console.log(typeof null) // object
#8. == và === khác nhau như thế nào?
Ví dụ:
var number1 = 1; var number2 = '1'; console.log(number1 == number2) // true console.log(number1 === number2) // false
#9. Thay đổi style/class của element?
Ví dụ:
document.getElementById("myId").style.backgroundColor = "red"; document.getElementById("myId").className = "newclass"; document.getElementByClass("myClass").className = "newclass"; document.getElementByTagsName("myTagsName").className = "newclass";
#10. Tại sao Math.max() nhỏ hơn Math.min()?
Ví dụ:
var infinity = 5 var value1 = Math.min(1) var value2 = Math.min(1, infinity) var value3 = Math.min(1, -infinity) console.log(value1) // 1 console.log(value2) // 1 console.log(value3) // -5
#11. Closure trong javascript là gì?
Ví dụ:
const arr = [1, 2, 3, 4]; for (var i = 0; i < arr.length; i++) { setTimeout(function() { console.log(i); }, 10); } // 4 4 4 4
Lý do là bởi vì hàm setTimeout sẽ tạo ra 1 function (closure) có thể truy cập phạm vi bên ngoài nó, vòng loop sẽ chứa index i. Sau 10ms, hàm được thực thi và nó sẽ log ra giá trị của i, là giá trị cuối cùng của vòng lặp (4). Xem thêm JavaScript Closures là gì
#12. Hosting trong javascript là gì?
Ví dụ:
a = 'https://viblo.asia'; console.log("My website: ", a); // My website: https://viblo.asia var domain; console.log("My website: ", a); // // My website: https://viblo.asia
#13. Phân biệt giữa Function Declaration và Function Expression
Ví dụ:
// Function Declaration: function a(x,y,z) { // code here } // Function Expression const a = function(x,y,z) { // code here }
#14. Hàm Array.splice() và hàm Array.slice() khác nhau như thế nào ?
Ví dụ:
// Array.splice() var language = ["php", "css", "html", "js"]; language.splice(1, 1, "python", "c#", "ios"); console.log(language) // ['php', 'python', 'c#', 'ios', 'html', 'js']; // Array.slice() var language = ["html", "js", "php", "c#", "python", "androi", "ios"]; var slice = language.slice(1, 4); console.log(slice); // ['js(1)', 'php(2)', 'c#(3)']
#15. Spread Operator trong javascript ?
Ví dụ:
var topLane = ['zed', 'akali']; var all = ['yasuo', 'rengar', ...topLane, 'đan trường']; console.log(all) // ['yasuo', 'rengar', 'zed', 'akali', 'đan trường']
#16. Anonymous function là gì ?
Ví dụ:
#17. Tại sao 0.1 + 0.2 không bằng 0.3 ?
console.log(0.1 + 0.2) //0.30000000000000004 // Sử dụng toFixed() var number = 0.1 + 0.2; console.log(number.toFixed(2)) // 0.3
#18. Sự khác nhau giữa window.onload và onDocumentReady ?
#19. Kết quả của 1 + 2 + ‘3’ ?
#20. Promise trong javascript là gì ?
Hi vọng sau khi đọc xong bài này các bạn có thể nhớ thêm, học thêm một chút gì đó về javascript. Mong có thể giúp ích cho các bạn.
Đừng bỏ lỡ những bài viết hay về:
- Vượt qua 7 sai lầm này để học JavaScript dễ thở hơn
- 12 tips hay cho JavaScript
- Hỏi ngắn đáp nhanh – Trắc nghiệm JavaScript
Xem thêm tuyển dụng JavaScript Developer trên TopDev
TopDev via viblo.asia