SDN301mChưa đoKỳ 7Chuyên ngành Cập nhật 28/03/2026
Server-Side development with NodeJS, Express, MongoDB - SDN301m
109Câu hỏi
3Bộ đề
1Chủ đề
Câu hỏi của môn
44/109 câuCòn 65
25The Node.js modules can be exposed using4 lựa chọn
Amodule.expose
Bmodule
Cmodule.exports
DAll the answers are correct
Lời giải
Mở trang câu hỏi này →Các mô-đun Node.js có thể được lộ ra bằng cách sử dụng các phương thức khác nhau. Trong đó, `module.exports` là phương thức phổ biến nhất để xuất khẩu các hàm, biến hoặc đối tượng. Nó cho phép bạn tạo ra các mô-đun có thể được sử dụng bởi các ứng dụng khác. Ngoài ra, bạn cũng có thể sử dụng `module` để xuất khẩu các giá trị. Tuy nhiên, phương thức này không được khuyến khích sử dụng vì nó có thể gây ra các vấn đề về bảo mật. Một phương thức khác là `module.exports` với một đối tượng, nơi bạn có thể xuất khẩu các hàm, biến hoặc đối tượng dưới dạng các thuộc tính của đối tượng. Cuối cùng, `module.expose` là một phương thức cũ và không được khuyến khích sử dụng. Vì vậy, đáp án đúng là tất cả các phương thức trên đều có thể được sử dụng để lộ ra các mô-đun Node.js.
A
_pathnameB
_locationC
_fiderD
_filenameLời giải
Mở trang câu hỏi này →Trong khi thực hiện một chương trình Python, có thể cần biết đường dẫn tuyệt đối của tập tin hiện tại. Để giải quyết vấn đề này, Python cung cấp một số biến module có thể được sử dụng. Trong số đó, biến module nào giữ lại đường dẫn tuyệt đối của tập tin module hiện tại?
AWeb
BAndroid
CAll the answers are correct
Lời giải
Mở trang câu hỏi này →Firebase là một nền tảng backend mạnh mẽ được sử dụng để xây dựng các ứng dụng đa dạng. Nó cung cấp các tính năng như lưu trữ dữ liệu, xử lý thông tin, phân tích dữ liệu và nhiều hơn nữa. Firebase có thể được sử dụng để xây dựng các ứng dụng web, ứng dụng di động cho Android và iOS. Nó cho phép các nhà phát triển xây dựng các ứng dụng nhanh chóng và hiệu quả, đồng thời cũng cung cấp các tính năng bảo mật và phân tích dữ liệu mạnh mẽ. Vì vậy, câu trả lời đúng cho câu hỏi này là tất cả các lựa chọn đều đúng.
A
global.cacheB
module.cacheC
process.cacheD
require.cacheLời giải
Mở trang câu hỏi này →Để quản lý bộ nhớ đệm (cache) của các mô-đun yêu cầu, chúng ta sử dụng một đối tượng cụ thể. Đối tượng này cho phép chúng ta kiểm soát và quản lý bộ nhớ đệm của các mô-đun đã được yêu cầu. Trong Node.js, đối tượng được sử dụng để quản lý bộ nhớ đệm của các mô-đun yêu cầu là 'require.cache'. Đối tượng này cho phép chúng ta thêm, xóa và kiểm tra các mô-đun đã được yêu cầu. Điều này giúp chúng ta tối ưu hóa hiệu suất và giảm thiểu thời gian tải mô-đun. Ngoài ra, đối tượng 'require.cache' cũng cho phép chúng ta kiểm tra các mô-đun đã được yêu cầu và quản lý bộ nhớ đệm của chúng.
A
GETB
PUTC
SETD
POSTLời giải
Mở trang câu hỏi này →Phương thức nào yêu cầu máy chủ chấp nhận dữ liệu được bao gồm trong yêu cầu là một đối tượng/đại diện mới của tài nguyên được xác định bởi URI?
ANo need for complicated configuration
BThe data is real-time
CFirebase offers simple control dashboard
DFirebase free plan is limited to 50 Connéctions'* | * NDE fh Te PIVEN IE AS The Do he Pade tn aste She Sue
Lời giải
Mở trang câu hỏi này →Firebase là một nền tảng phát triển ứng dụng di động và web mạnh mẽ. Khi nhắc đến lợi ích của Firebase, chúng ta thường nghĩ đến việc không cần cấu hình phức tạp, dữ liệu thời gian thực và bảng điều khiển đơn giản. Tuy nhiên, có một điểm mà Firebase không phải là lợi thế. Đó là hạn chế của kế hoạch miễn phí. Theo đó, kế hoạch miễn phí của Firebase chỉ cho phép 50 kết nối. Điều này có thể không đủ cho các dự án lớn hoặc có nhiều người dùng. Vì vậy, nếu bạn đang tìm kiếm một nền tảng có kế hoạch miễn phí không giới hạn kết nối, Firebase có thể không phải là lựa chọn tốt nhất.
31What method is used for filtering in Firebase?4 lựa chọn
AequalToQ method
BendAtQ method
CstartAtQ) method
DAll the answers are correct
Lời giải
Mở trang câu hỏi này →Để lọc dữ liệu trong Firebase, người dùng có thể sử dụng các phương thức khác nhau. Phương thức 'equalToQ method' cho phép lọc dữ liệu bằng cách so sánh giá trị của trường cụ thể với giá trị cụ thể. Ví dụ, nếu bạn muốn lọc các bản ghi có giá trị 'age' là 25, bạn có thể sử dụng phương thức này. Phương thức 'endAtQ method' cho phép lọc dữ liệu bằng cách so sánh giá trị của trường cụ thể với giá trị cụ thể và bao gồm tất cả các bản ghi có giá trị nhỏ hơn hoặc bằng giá trị đó. Ví dụ, nếu bạn muốn lọc các bản ghi có giá trị 'age' nhỏ hơn hoặc bằng 25, bạn có thể sử dụng phương thức này. Phương thức 'startAtQ method' cho phép lọc dữ liệu bằng cách so sánh giá trị của trường cụ thể với giá trị cụ thể và bao gồm tất cả các bản ghi có giá trị lớn hơn hoặc bằng giá trị đó. Ví dụ, nếu bạn muốn lọc các bản ghi có giá trị 'age' lớn hơn hoặc bằng 25, bạn có thể sử dụng phương thức này. Vì vậy, tất cả các phương thức trên đều có thể được sử dụng để lọc dữ liệu trong Firebase.
32Which method used to update the Firebase data?4 lựa chọn
A
alterB
putC
setD
updateLời giải
Mở trang câu hỏi này →Để cập nhật dữ liệu trên Firebase, người dùng có thể sử dụng một số phương thức khác nhau. Tuy nhiên, phương thức được khuyến nghị và thường được sử dụng là phương thức 'update'. Phương thức 'update' cho phép người dùng cập nhật một phần dữ liệu mà không cần phải tải toàn bộ dữ liệu về và tải lại lên. Điều này giúp giảm thiểu thời gian và tăng hiệu suất khi cập nhật dữ liệu lớn. Ngoài ra, phương thức 'update' cũng cho phép người dùng cập nhật dữ liệu theo thời gian thực, giúp đảm bảo dữ liệu luôn được cập nhật và chính xác. Các phương thức khác như 'put' và 'set' cũng có thể được sử dụng để cập nhật dữ liệu, nhưng chúng thường được sử dụng trong các trường hợp đặc biệt và không được khuyến nghị sử dụng rộng rãi.
AGRID
BAll of the mentioned
CRead
DCRUD
Lời giải
Mở trang câu hỏi này →Trong MongoDB, các hoạt động sửa đổi dữ liệu của một bộ sưu tập duy nhất. CRUD là viết tắt của các hoạt động cơ bản trong MongoDB bao gồm Create (Tạo), Read (Đọc), Update (Cập nhật) và Delete (Xóa). Các hoạt động này được sử dụng để quản lý dữ liệu trong một bộ sưu tập. Ví dụ, bạn có thể tạo một tài liệu mới, đọc một tài liệu hiện có, cập nhật một tài liệu hoặc xóa một tài liệu khỏi bộ sưu tập. Các hoạt động CRUD là cơ bản và quan trọng trong MongoDB vì chúng cho phép bạn quản lý dữ liệu một cách hiệu quả.
34Which choice is not a Node global object?4 lựa chọn
Aprocess
Bexports
CsetTimeout
DBuffer Teh SEA Da SIN RD a ty atte Poses Ma any
Lời giải
Mở trang câu hỏi này →Chọn đáp án không phải là đối tượng toàn cục của Node.js. Đối tượng toàn cục là các biến và hàm có thể được truy cập từ bất kỳ đâu trong mã chương trình. Trong Node.js, một số đối tượng toàn cục phổ biến bao gồm process, exports, setTimeout. Tuy nhiên, trong danh sách lựa chọn, có một phần tử không phải là đối tượng toàn cục của Node.js. Đó là "Buffer Teh SEA Da SIN RD a ty atte Poses Ma any". Đây không phải là một đối tượng toàn cục hợp lệ của Node.js vì nó không phải là một biến hoặc hàm có thể được truy cập từ bất kỳ đâu trong mã chương trình.
35Point out the wrong statement:4 lựa chọn
ANon Relational databases require that schemas be defined before you can add data
BNoSQL databases are built to allow the insertion of data without a predefined schema
CNewSQL databases are built to allow the insertion of data without a predefined schema
Dall new BUCHER A Saath Ore Posed Te Pd Sas ACR RSA SD BO Pte OO as
Lời giải
Mở trang câu hỏi này →Câu hỏi này yêu cầu bạn xác định câu trả lời sai. Các lựa chọn bao gồm:
- Non Relational databases yêu cầu định nghĩa schema trước khi thêm dữ liệu.
- NoSQL databases được xây dựng để cho phép chèn dữ liệu mà không cần định nghĩa schema trước.
- NewSQL databases được xây dựng để cho phép chèn dữ liệu mà không cần định nghĩa schema trước.
Câu trả lời đúng là tất cả các lựa chọn trên đều sai vì NewSQL databases thực chất là sự kết hợp giữa các tính năng của relational và NoSQL databases, và chúng vẫn yêu cầu định nghĩa schema trước khi thêm dữ liệu.
Adev-tools
Binspect
Cchrome
Ddebug
Lời giải
Mở trang câu hỏi này →Để debug một script Node.js trong Chrome DevTools, bạn có thể sử dụng tùy chọn CLI "debug". Tùy chọn này cho phép bạn mở Chrome DevTools và bắt đầu debug script ngay lập tức. Khi bạn sử dụng "debug", Node.js sẽ dừng lại tại dòng lệnh đầu tiên và mở Chrome DevTools để bạn có thể debug script. Điều này giúp bạn dễ dàng tìm và sửa lỗi trong script của mình. Ngoài ra, bạn cũng có thể sử dụng tùy chọn "inspect" để mở Chrome DevTools và debug script, nhưng "debug" là tùy chọn được khuyến nghị vì nó cho phép bạn bắt đầu debug script ngay lập tức.
37Which of the following is a NoSQL Database Type?4 lựa chọn
ASQL
BJSON
CDocument databases
DAll of the mentioned AURIS eT Dee BOISE yt Ab Spey ener ee ere see mk cee ssc inet nye TIDE LTE I oe te eo tad Fae PDs Ee Shah ont
Lời giải
Mở trang câu hỏi này →Câu hỏi này yêu cầu bạn chọn loại cơ sở dữ liệu NoSQL. Cơ sở dữ liệu NoSQL là một loại cơ sở dữ liệu không sử dụng ngôn ngữ truy vấn SQL để lưu trữ và truy vấn dữ liệu. Thay vào đó, nó sử dụng các mô hình dữ liệu khác nhau như cơ sở dữ liệu tài liệu, cơ sở dữ liệu khóa-giá trị, cơ sở dữ liệu đồ họa và cơ sở dữ liệu phân tán. Trong các lựa chọn trên, cơ sở dữ liệu tài liệu là một loại cơ sở dữ liệu NoSQL phổ biến, nơi dữ liệu được lưu trữ dưới dạng tài liệu JSON hoặc XML. Vì vậy, câu trả lời đúng là "Document databases".
38What will this code log to the console? i File: person.js exports = "John"; i! File: index.js, const person = require('/person.js');.4 lựa chọncó code
console.log(person);AJohn
BUndefined
CJohn}
DPaipetap tithe tn EGS MS he PASAT ed ths
Lời giải
Mở trang câu hỏi này →Mã nguồn này sẽ in ra màn hình 'John' vì trong file 'person.js', chúng ta đã export một chuỗi 'John'. Sau đó, trong file 'index.js', chúng ta đã import chuỗi này và sử dụng console.log() để in ra màn hình. Vì vậy, kết quả sẽ là 'John'.
Areq.data
Bapp.locals
Capp.params
DAll the answers are correct
Lời giải
Mở trang câu hỏi này →Khi sử dụng route parameters trong Express.js, các giá trị được bắt được sẽ được lưu trữ ở các vị trí khác nhau. Trong trường hợp này, chúng ta cần xác định nơi lưu trữ các giá trị này.
40According to the rules of semantic versioning5 lựa chọn
Awhat does a release incrementing the third number in an npm version string communicate to users about the release changes?
BChanges are not backwards compatible
CChanges might not be backward compatible and might break existing code
DChanges are just bug fixes and no new features were added
EChanges will add new functionality but will not break any existing code
Lời giải
Mở trang câu hỏi này →Theo quy tắcSemantic Versioning, khi phiên bản tăng lên trong số thứ ba của một chuỗi phiên bản npm, nó sẽ thông báo cho người dùng về những thay đổi trong phiên bản. Điều này có nghĩa là phiên bản mới có thể không tương thích ngược và có thể phá vỡ mã nguồn hiện có. Ví dụ, nếu phiên bản trước đó là 1.2.3 và phiên bản mới là 1.2.4, điều đó có nghĩa là có một số thay đổi trong phiên bản mới mà có thể không tương thích với phiên bản trước đó. Điều này có thể xảy ra khi có một số thay đổi trong mã nguồn mà không tương thích với phiên bản trước đó. Vì vậy, người dùng cần phải kiểm tra lại mã nguồn của mình để đảm bảo rằng nó tương thích với phiên bản mới.
41What principle does the NodeJS API work on?4 lựa chọn
AAsynchronous
BSynchronous
CBoth of the above
DAll the answers are wrong
Lời giải
Mở trang câu hỏi này →Node.js API hoạt động dựa trên nguyên tắc Asynchronous, nghĩa là nó không chờ đợi kết quả của một hành động trước khi thực hiện hành động tiếp theo. Điều này cho phép Node.js xử lý nhiều yêu cầu đồng thời, tăng hiệu suất và khả năng mở rộng. Asynchronous là một trong những tính năng quan trọng nhất của Node.js, giúp nó trở thành một nền tảng phát triển ứng dụng web mạnh mẽ và linh hoạt. Nó cho phép các nhà phát triển tạo ra các ứng dụng có thể xử lý nhiều yêu cầu đồng thời, giảm thiểu thời gian chờ đợi và tăng cường trải nghiệm người dùng. Ngoài ra, Asynchronous cũng giúp giảm thiểu tài nguyên hệ thống, vì nó không cần phải giữ lại các tài nguyên cho mỗi yêu cầu riêng lẻ.
ATrue
BFalse
CCan be true or false
DCan not say
Lời giải
Mở trang câu hỏi này →Khi chúng ta muốn loại bỏ tất cả các callback, chúng ta có thể sử dụng playersRef_off. Điều này có nghĩa là chúng ta có thể loại bỏ tất cả các callback đã được gắn vào tham chiếu playersRef. Điều này thường được sử dụng khi chúng ta muốn xóa tất cả các callback đã được gắn vào tham chiếu này. Ví dụ, nếu chúng ta đã gắn một callback vào tham chiếu playersRef để cập nhật trạng thái của các player, thì chúng ta có thể sử dụng playersRef_off để loại bỏ callback này và ngăn chặn nó được thực thi khi chúng ta cập nhật trạng thái của các player. Điều này giúp chúng ta có thể kiểm soát và quản lý các callback một cách hiệu quả hơn.
A_id
Bid
Cid_
Dnone of the mentioned
Lời giải
Mở trang câu hỏi này →Trong MongoDB, khi lưu trữ dữ liệu vào một collection, mỗi bản ghi (document) đều cần có một khóa duy nhất để xác định. Khóa này được gọi là khóa phân biệt (unique key). Trong các lựa chọn đã cho, khóa được sử dụng để chỉ định tính duy nhất trong collection là '_id'. Khóa '_id' được tạo tự động khi tạo một bản ghi mới và có thể được sử dụng để tìm kiếm, cập nhật hoặc xóa dữ liệu. Ngoài ra, khóa '_id' cũng được sử dụng để xác định tính duy nhất của mỗi bản ghi trong collection.
Awhile (var i = 1; i <= 25; i++) db.testData.insert( {x:i})
Bfor (var i = 1; i <= 25; i++) db.testData.insert( { x:i})
Cfor (var i= 1; 1 <= 25; i++) db.testData.inserts( {x:i})
DNone of the mentioned
Lời giải
Mở trang câu hỏi này →Câu hỏi này yêu cầu bạn chọn phương pháp nào sẽ tạo ra tập dữ liệu testData một cách ngầm định. Các lựa chọn bao gồm bốn phương pháp khác nhau. Phương pháp 1 sử dụng vòng lặp while, phương pháp 2 sử dụng vòng lặp for, phương pháp 3 cũng sử dụng vòng lặp for nhưng với điều kiện sai và phương pháp 4 không có phương pháp nào phù hợp. Để tạo ra tập dữ liệu testData, chúng ta cần sử dụng phương pháp 2, vì nó sử dụng vòng lặp for và điều kiện đúng để tạo ra 25 bản ghi trong tập dữ liệu.