Cho đoạn code sau, kết quả sẽ là:
const obj = { 1: 'a', 2: 'b', 3: 'c' };
const set = new Set([1, 2, 3, 4, 5]);
obj.hasOwnProperty('1');
obj.hasOwnProperty(1);
set.has('1');
set.has(1);
const obj = { 1: 'a', 2: 'b', 3: 'c' };
const set = new Set([1, 2, 3, 4, 5]);
obj.hasOwnProperty('1');
obj.hasOwnProperty(1);
set.has('1');
set.has(1);
Trả lời:
Đáp án đúng: C
Đoạn code kiểm tra sự khác biệt giữa cách truy cập thuộc tính của object và set trong JavaScript.
`obj.hasOwnProperty('1')`: Trong JavaScript, khi một object được tạo với các key là số, chúng sẽ tự động được chuyển thành chuỗi. Do đó, `obj.hasOwnProperty('1')` sẽ trả về `true` vì object `obj` có một key là chuỗi `'1'`.
`obj.hasOwnProperty(1)`: Tương tự như trên, JavaScript sẽ tự động chuyển số `1` thành chuỗi `'1'` khi truy cập thuộc tính của object. Vì vậy, `obj.hasOwnProperty(1)` cũng sẽ trả về `true`.
`set.has('1')`: Set lưu trữ các giá trị theo đúng kiểu dữ liệu của chúng. Ở đây, set được khởi tạo với các giá trị số (1, 2, 3, 4, 5). Do đó, `set.has('1')` sẽ trả về `false` vì set không chứa chuỗi `'1'`.
`set.has(1)`: Set chứa giá trị số `1`, vì vậy `set.has(1)` sẽ trả về `true`.
Vậy kết quả cuối cùng là: `true true false true`
Tổng hợp 500 câu hỏi trắc nghiệm Javascript có đáp án đầy đủ nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức.
50 câu hỏi 60 phút
Câu hỏi liên quan

FORM.08: Bộ 130+ Biểu Mẫu Thống Kê Trong Doanh Nghiệp

FORM.07: Bộ 125+ Biểu Mẫu Báo Cáo Trong Doanh Nghiệp

FORM.06: Bộ 320+ Biểu Mẫu Hành Chính Thông Dụng

FORM.05: Bộ 330+ Biểu Mẫu Thuế - Kê Khai Thuế Mới Nhất

FORM.04: Bộ 240+ Biểu Mẫu Chứng Từ Kế Toán Thông Dụng
