HTTP
HTML/CSS
JavaScript
DOM
TypeScript
100

What is a Client?

A client is a computer, device,  web browser, or software program that requests information/services from another computer called a server

100

What is a tag?

They are keywords enclosed within angled brackets, with an opening tag (<tag>) and a closing tag (</tag>). Tags provide instructions to web browsers on how to display and interpret the content between the opening and closing tags.

100

What are the three datatypes in JS?

number, string, object

100

List the ways elements can be selected from the DOM

getElementById(), getElementsByClassName(), getElementsByTagName(), querySelector(), querySelectorAll()
100

Assign a string variable of value "Hello!" explicitly.

let str: string = "Hello!"

200

What are the components of an HTML request?

Request Line, Headers, Body (optional)

200

What is a CSS declaration?

key/value pairs with a property name and corresponding values

200

What are the characteristics of an array in JS?

0-indexed, dynamic, multiple datatypes, iterable

200

What parts of HTML are DOM nodes?

tags, attributes, text, comments
200

What are the differences between TypeScript and JavaScript?

TypeScript is OOP, but JavaScript is prototype-based.

TypeScript has static typing while JavaScript does not.

TypeScript support interfaces, but JavaScript does not.

300

What is a cookie?

small piece of data a server sends to a web browser. enables web apps to store small amounts of data and remember state information

300

What is an HTML form?

Forms allow websites to collect user input to send data to a server for processing.

300

What is a callback function?

A function that gets executed following another function's completion of execution. Helps develop asynchronous code.

300

What is Bubbling?

Events propagate from target elements to parents to ancestors

300

What are the special types?

any: disables type checking and removes strict typing

unknown: safer alternative to any. TS prevents unknown types from being used

400

What are the idempotent methods?

idempotent methods can be called multiple times without producing different outcomes and preserves the state of the server. (GET, PUT, DELETE, OPTIONS)

400

How does HTML5 support validation?

Browsers can validate fields on the client-side if fields are specified.

400

What are the falsy values?

boolean false, empty string, undefined variable, null variable, NaN (not a number), 0

400

Draw the DOM of an HTML file that displays "Hello World!"

check for: elements, attributes, text, root

400

What is structural typing?

A type system in which compatibility and equivalence is determined by the structure/shape of the type.

500

Name a 3xx status code and explain what it does

300: (multiple choices)

301: (moved permanently)

302: (found)

304: (not modified)

307: (temporary redirect)

500

What is a pseudo-class?

a selector that targets elements based on their state/position, for example, hovering over links or targeting first/last child elements (element:behavior)

500

What does "strict mode" prevent?

use of undefined variables, reserved keywords as names, duplicate object properties, duplicate function parameters, assignment of values to read-only properties, and deleting undeleteable properties

500

When should event.stopImmediatePropagation() be used?

When an element has multiple event handlers for a single event

500

How is the root of a TS project specified? What are its contents?

tsconfig.json specifes the root files and compiler options needed to compile the project