Chapter 1 · Foundations

Inside the computer

You are reading the whole lesson on one page. Back to one step at a time

Step 1 of 18 · Concept

A computer, simplified

By the end of this lesson you know what happens to your program when it runs.

Every computer has three main parts:

partwhat it doeskeeps things when off?
CPUcarries out instructions, one at a time, very fastno
memoryholds the programs that are running, and their valuesno
storageholds files, such as main.jsyes
console.log(1);
console.log("Go!");
console.log(3);
console.log(2);
console.log("A frame for greet goes on top");
console.log("node reads main.js from storage");
console.log("Nothing is pending, so Node exits");
console.log("The module's frame goes on the stack");
console.log("V8 turns the file into bytecode");
console.log("greet returns; its frame is removed");
console.log("node checks the grammar of the whole file");
Terminal
Step 1 of 2Try it: put it in order

Keyboard shortcuts

The step

ContinueEnter
Previous / next stepAlt+[ · Alt+]
Move along the steps bar← → Home End, then Enter
From a quiz's title to its answers↓
Skip to the stepTab, then Enter (first on the page)
Course outlineAlt+O
These shortcuts?

The workspace

Run the stepCtrl+Enter (⌘↵ on a Mac)
Lesson → editor → consoleF6 (Shift+F6 back)
Output ↔ TerminalCtrl+`
Focus the editorCtrl+. (⌘. on a Mac)
Hide or show the lessonAlt+L
Restore, close a messageEsc (outside the editor and the terminal)

The editor

Leave the editorF6 (Shift+F6 back); or Ctrl+M (⌃⇧M on a Mac), then Tab moves the focus (not in the vim mode)
Open a file by nameCtrl+P (⌘P on a Mac)
All commandsCtrl+Shift+P (⌘⇧P on a Mac) or F1
Go to a lineCtrl+G (⌃G on a Mac)
Show or hide the filesCtrl+B (⌘B on a Mac)
Previous / next file tabCtrl+Shift+[ · Ctrl+Shift+] (⌘⇧[ · ⌘⇧] on a Mac)
The file tabs← → Home End on a tab; Delete closes it
Save the files nowCtrl+S (⌘S on a Mac)
Go to a symbol in the fileCtrl+Shift+O (⌘⇧O on a Mac)
Go to the definitionF12
Format the fileCtrl+Shift+F (⌘⇧F on a Mac), or Shift+Alt+F
Go back / forward after a jumpAlt+← · Alt+→ (⌃- · ⌃⇧- on a Mac)