Skip to content

Latest commit

 

History

History
executable file
·
363 lines (259 loc) · 10.2 KB

node.js-quiz.md

File metadata and controls

executable file
·
363 lines (259 loc) · 10.2 KB

Node.js

Q1. When a javaScript function is invoked (called) in Node, where is a new frame placed?

  • the call stack
  • the event loop
  • the poll phase
  • the events queue

Q2. Which of the following is a core module in Node?

  • webpack
  • crypto
  • request
  • chalk

Q3. Which of the following Buffer class methods returns an uninitialized buffer?

  • allocUnsafe
  • concat
  • from
  • alloc

Q4. Which of the following modules is NOT a built-in module in Node?

  • ftp
  • events
  • dgram
  • http2

Q5. Which fs module method can be used to read the content of a file without buffering it in memory?

  • read
  • readFile
  • createReadStream
  • readFileSync

Explanation:

From official docs: https://nodejs.org/api/fs.html#fs_dir_read To minimize memory costs, when possible prefer streaming via fs.createReadStream().

Q6. Which of the following DNS module methods uses the underlying OS facilities and does not necessarily perform any network communication?

  • lookup
  • resolve
  • resolve4
  • reverse

Q7. How do you check that a value is a date object in Node?

  • util.types.isDate(value)
  • assert.isDate(value)
  • console.isDate(value)
  • util.date(value)

Q8. Can you create an https web server with Node.js?

  • no, there are no modules supporting it yet
  • yes, with the https or http2 modules
  • yes, through the path module
  • yes, with the http module

Q9. What is the Api that is designed to insulate Addons from changes in the underlying JavaScript engine?

  • A-API
  • Z-API
  • N-API
  • X-API

Q10. Which CLI option can you use to debug a node script in Chrome DevTools?

  • --dev-tools
  • --inspect
  • --chrome
  • --debug

Q11. How can you count the number of logical CPUs on the machine that is running Node?

  • node -p "process.cpus"
  • node -p "util.cpus().size"
  • node -p "process.os.cpus"
  • node -p "os.cpus().length"

Q12. Which of the following is a method on the console object?

  • exit
  • test
  • time
  • print

Q13. Which object is used to manage the cache of required modules?

  • global.cache
  • module.cache
  • process.cache
  • require.cache

Q14. What is the command to silence all process warnings?

  • node index.js --trace-warnings
  • node --no-warnings
  • node -trace-warnings
  • node index.js --no-warnings

Q15. How can you use the promise API with a callback-based function like child_process.exec?

  • new Promise(child_process.exec())
  • util.promisify(child_process.exec())
  • util.promisify(child_process.exec)
  • new Promise(child_process.exec)

Q16. Which of the following is NOT a Node repl command?

  • .brake
  • .history
  • .editor
  • .save

Q17. Which statement is true when you run the code shown below?

require('child_process').fork('script.js');

  • The forked process shares the event loop with the parent process
  • A new VM instance is created and the two VM instances will be shared between the forked process and the parent process.
  • The forked process will have its own VM instance.
  • The forked process shares the same VM thread with the parent process.

Q18. If EventEmitter is in scope, which of the following lines of code will have an event emitter emitting a change event?

  • EventEmitter.emit('change');
  • EventEmitter.new().emit('change');
  • (new EventEmitter()).emit('change');
  • new EventEmitter('change');

Explanation:

Because the EventEmitter is already in scope. No need to create new one.

Q19. Which of the following objects is a stream

  • process.uptime
  • process.stdout
  • process
  • Buffer

Explanation:

process.stdout is Buffer type.

Q20. Which module variable holds the resolved aboslute path of the current module file?

  • __pathname
  • __location
  • __flder
  • __filename

21. If the child_process module methods are in scope, what is a current way to execute the command ps -ef using a child process?

  • spawn("ps -ef")
  • exec("ps -ef")
  • exec("ps", "-ef")
  • fork("ps -ef")

Q22.Which console method can be used to print the stack trace to the point of its execution?

  • stack
  • trace
  • debug
  • print

Q23.When you run JavaScript in a Node.js application, which of the following elements in a Node.js stack actually executes that JavaScript?

  • the libuv library
  • the c-ares library
  • the VM (like VS or Chakra)
  • the repl module

Q24. Looking at the code below, what does the console show?

const http = require('http');
 const hostname = '127.0.0.1'; const port = 3000;
 const server = http.createServer((req, res) => {
  res.statusCode = 200;  res.setHeader("Content-Type", "text/plain");  res.end("Hello World\n");
});
server.listen(port, hostname, () => { console.log(`server running at http://${hostname}:${port}/`); });

Q25.What is the purpose of the path module?

  • to provide utilities to play with file and directory paths
  • to provide utilities to add and remove files
  • It is a retiring module.
  • to provide utilities to test files

Q26.How do you make an HTTP server object active and listen to requests on certain ports?

  • server. start
  • server.activate
  • server.listen
  • server. run

Q27.What does the code shown below do?

const fs = require('fs'); const os = require('os');
const system = os.platform(); const user = os.userInfo().username;
fs.appendFile('hello.txt', `Hello ${user} on ${system}`, (err) => { if (err) throw err; console.log('The data was appended to file!');}
);
  • creates a text file hello.txt and appends customized text
  • creates an image file
  • console logs system information
  • creates a file named data and append numbers

Q28.How do you start a Node application, if the entry file is indexjs?

  • nodemon start
  • start index.js
  • node index.js
  • node start

Q29.What is the purpose of the file system (fs) module?

  • to provide methods to work with requests and responses
  • to provide methods to work with files
  • to provide methods to work with databases
  • to find new file systems

Q30.What is the Node LTS version?

  • It is the current unstable version and is to be avoided.
  • It is the version that will be retired soon.
  • It is the version with the latest features.
  • It is the safest version for long-term support.

Q31. Which of the following is NOT a valid stream in Node?

  • process. stdinfo
  • process. stdin
  • process. stdout
  • process. stderr

Q32. You have a script.js file with the single line of code shown here. What will be the output of executing script.js with the node command?

console.log(arguments);

  • ReferenceError: arguments is not defined
  • an empty string
  • undefined
  • an object representing an array that has five elements

Q33. Which choice is not a valid method on event emitters?

  • start
  • on
  • once
  • off

Q34. Which special object is an instance of EventEmitter?Which special object is an instance of null?

  • process
  • Buffer
  • root
  • require

Q35. What is the command to get a list of available commands for Node.js?What is the command to get a list of available commands for Node.js?

  • node index.js -x
  • node -v
  • node -h
  • node index.js -h

Q36. When a request event is received in the HTTP module, what is the type of the first argument passed to that event, usually named req?

  • http.IncomingMessage
  • http.ServerRequest
  • http.ClientRequest
  • http.ServerResponse

Q37. What are the arguments passed to the module wrapper function?

  • exports, **filename, **dirname
  • exports, process, require, module, **filename, **dirname
  • exports, module, **filename, **dirname
  • exports, require, module, **filename, **dirname

Q38. Which library provides Node.js with the event loop?

  • V8
  • c-ares
  • libuv
  • events

Q39. What does the .node file extension represent?

  • a C++ file that can have a .node extension and that Node will be able to execute directly.
  • a C++ Addon file that is built with node-gyp
  • a JSON file that can have a .node extension as well as the .json extension
  • a JavaScript file that can have a .node extension as well as the .js extension

Q40. What can you export with module.exports?

  • only objects.
  • only functions
  • only variables and arrays
  • functions, objects, arrays, or anything you assign to the module

Q41. Which core module in Node can you use to take advantage of multicore systems?

  • os
  • util
  • cluster
  • net

Q42. Which core Node module has wrappers for OpenSSL methods?

  • SSL
  • hash
  • crypto
  • TLS

Q43. Which line imports a promise-based version of the readFile method?

  • const { readFile } = require(fs).promises
  • const { readFile } = require(fs)
  • const { readFilePromises: readFile } = require(fs)
  • const { readFile } = require(promises)

Q44. According to the rules of semantic versioning, what does a release incrementing the third number in an npm version string communicate to users about the release changes?

  • Changes are not backwards compatible.
  • Changes might not be backward compatible and might break existing code.
  • Changes are just bug fixes and no new features were added.
  • Changes will add new functionality but will not break any existing code.

Q45. What does REPL stand for?

  • run, examine, put, loop
  • read, eval, print, loop
  • run, edit, print, loop
  • read, extend, print, loop

Q46. Which file does node-gyp use to read the build configuration of module ?

  • .gyprc
  • binding.gyp
  • gyp.json
  • package.gyp

Q47. Which core module in Node can you use for testing?

  • chai
  • jest
  • assert
  • mocha