Nội dung bài viết
Video học lập trình mỗi ngày
Tôi biết trở thành developer giỏi không liên quan gì mấy đến các câu hỏi thế này, nhưng đa số nó đến từ các bài test phỏng vấn của các công ty nước ngoài mà đa số là những câu hỏi kỳ lạ.
Trong bài trước chúng ta vừa thảo luận một đề tài rất hot về "JavaScript Async/Await: Sai Lầm Trong Cách Sử Dụng?". Và hôm qua chúng tôi nhận được rất nhiều câu hỏi về javascript, nhất là về kỹ thuật trong ECMA. Cho nên, chính vì vậy hôm nay chúng ta sẽ đi vào những câu hỏi thuộc kỹ thuật ECMA nhiều hơn.
Tham gia cùng chúng tôi:
Facebook: Cộng đồng lập trình javascript
Facebook Thảo luận về Javascript, ReactJS, VueJS, AngularJS Việt Nam
Trong bài viết này, chúng tôi đã tham khảo được và đưa ra 10 bài tập dựa trên nhiều yếu tố. Và chúng tôi biết các bạn sẽ có thể mất công tìm kiếm, nhưng có nhất thiết như vậy không? Các bạn hãy tự suy nghĩ ít nhất một vài câu trong bài viết này. Nếu các bạn không hiểu ở trường hợp nào, thì chính chỗ đó các bạn đang yếu thật sự. Và khi biết mình đang thiếu kiến thức gì thì bổ sung quá đơn giản phải không?
OK, let's go! Các bạn có thể trả lời trong comment của bài viết or trên page Cộng đồng lập trình javascript.
#0 Tricky Function Call
var result = (function(a) { return a*a; }(5.5)); console.log(result);
What is the output in the console?
#1 Fat Arrow + Declaration Overlap
const b = [1, 2, 3]; const f = (a, ...b) => a + b; console.log(f(1));
What is the output in the console?
#2 Variable and Function Names Overlap
let f = (...f) => f; console.log(f(10)); f = (...f) => f.reduce(f => f); console.log(f(10)); function ff() { return arguments; } console.log(ff(10)); f = f => f; console.log(f(10));
What is the output in the console?
#3 Variable Scope
var foo = 10; bar = 3; (function () { var foo = 2; bar = 1; }()) bar = bar + foo; console.log(bar);
What is the output in the console?
#4 Global + Local
var x = 5; (function () { console.log(x); var x = 10; console.log(x); })();
What is the output in the console?
#5 Chained Assignment
(function(){ var a = b = 3; })(); console.log(typeof a); console.log(typeof b);
What is the output in the console?
#6 Auto Semicolon
function foo1() { return { bar: 'bar', }; } function foo2() { return { 'bar'; } } console.log(foo1()); console.log(foo2());
What is the output in the console?
#7 Javascript Number
console.log(0.1 + 0.2); console.log(0.1 + 0.2 === 0.3); console.log(9007199254740993 === 9007199254740992);
What is the output in the console?
#8 Object Keys
const a = {}, b = {c:'b'}, c = {b:'c'}; a[b] = 111; a[c] = 333; console.log(a[b]);
What is the output in the console?
#9 setTimeout Loops
for (var i = 0; i < 5; i++) { setTimeout(function() { console.log(i); }, i * 1000 ); } for (let i = 0; i < 5; i++) { setTimeout(function() { console.log(i); }, i * 1000 ); }
What is the output in the console?
#10 Chained Relationals
console.log(1 < 2 < 2); console.log(3 > 2 > 1);
What is the output in the console?
### Suggest
Tham gia cùng chúng tôi:
Facebook: Cộng đồng lập trình javascript
Facebook Thảo luận về Javascript, ReactJS, VueJS, AngularJS Việt Nam
Javascript có nhiều trap trong nhiều cuộc phỏng vấn, vì vậy trừ khi bạn chuẩn bị cho chúng hoặc đã ghi nhớ các thông số kỹ thuật về ECMA. Bạn có thể thất bại nhưng chỉ thất bại trong một số điểm đúng không? Hay là toàn bộ. Developers cố gắng xem kỹ và phát hiện điểm nào mà mình chưa hiểu nhiều hay hầu như chưa biết gì? Thì từ đó xác định lại kiến thức của mình xem bị hổng chỗ nào.
Và từ đó có các bạn có thể bổ sung thêm kiến thức của mình cho chắc chắn nhé.