To Block or Not To Block
'Five' Loops
Promises, Promises
Eich bin ein JavaScripter
Full Stream Ahead
100

When the execution of additional JavaScript in the Node.js process must wait until a non-JavaScript operation completes

What is Blocking?

100

This statement executes its statements as long as a specified condition evaluates to true.

What is While?

100

This Promise method can be executed when a promise is fulfilled or rejected.

What is Promise.then()?

100

Name if the international body that defines the JavaScript specification.

What is ECMA?

100

In Node.js, streams are abstract interface for working with ________.

What is streaming data?

200

Since JavaScript execution in Node.js is single threaded, this term refers to the event loop's capacity to execute JavaScript callback functions after completing other work.

What is Concurrency?

200

Use this statement to terminate a loop, switch, or in conjunction with a labeled statement.

What is break?

200

A Promise is in one of these states: pending, fulfilled, or ______.

What is rejected?

200

Brendan Eich wrote a protoype for JavaScript in this number of days.

What is 10?

200

The two main types of streams are ______ and ________.

What is readable and writable?

300

When a method has a synchronous option, it's name is appended by this

What is Sync?

300

This statement allows a program to evaluate an expression and attempt to match the expression's value to a case label. If a match is found, the program executes the associated statement.

What is switch?

300

This euphemism for heavily nested asynchronous functions could be considered the opposite of 'promise heaven'.

What is callback hell?

300

Node.js was initially an implementation of this JavaScript engine.

What is V8?

300

If you want your stream to operate on JavaScript values other than strings or Buffers, you would set it to be in this mode.

What is object mode?

400

Node uses this to handle "expensive" tasks. This includes I/O for which an operating system does not provide a non-blocking version, as well as particularly CPU-intensive tasks.

What is the Worker Pool?

400

This statement creates a loop Iterating over iterable objects (including Array, Map, Set, arguments object and so on), invoking a custom iteration hook with statements to be executed for the value of each distinct property.

What is for..of?


400

This executes two or more consecutive asynchronous operations, passing the previous step's result to the subsequent operation.

What is a promise chain?

400

The Mozilla browser was so named because it intended to be the '_____' killer.

What is Mosaic?

400

Specifying a total number of bytes, the amount of data potentially buffered depends on this option passed into the streams constructor.

What is the highWaterMark?

500

This blocks the event loop disastrously by potentially taking exponential time, exposing you to REDOS on "evil input".

What is a vulnerable regular expression?

500

This loop is what allows Node.js to perform non-blocking I/O operations — despite the fact that JavaScript is single-threaded — by offloading operations to the system kernel whenever possible.

What is Event?

500

This Promise method is tool for running asynchronous operations in parallel that takes multiple Promises and return a single one that resolves when that have all resolved.

What is Promise.all()?

500

Due to an effort led by Douglas Crockford, this version of ECMAScript was never released.

What is ECMAScript 4?

500

If a call to stream.write(chunk) returns false, this event will be emitted when it is appropriate to resume writing data to the stream.

What is the 'drain' event?