Glossary of JavaScript Tutorial Concepts

Syntax
The proper spelling, arrangement, and punctuation of keywords in a language.
Semantics
The meaning of a text with valid syntax. In a programming language, the result is some returned data or action, which may or may not be what was intended.
Language
A mapping between Syntax and Semantics.
Dictionary
A list of keyword or variable definitions, which can be quickly accessed by entering the keyword or variable name.
Keywords
The words provided in the initial dictionary of the JavaScript language.
Statement
A complete sequence of valid syntax with actionable semantics. Like a sentence, but ending with a ";" instead of a "." for some weird reason.
Program
1. Code that implements some functionality via a sequence of statements.
2. A dictionary of definitions of functions and data structures.
Scope
A set of statements in which a specific variable is known and accessible.
Block
Collection of statements which act together and enclose a block scope. Indicated by surrounding the statements with curly brackets. {} Blocks are the syntax for achieving scope.
Variables
Labels for boxes in memory which can hold anything. These are also new entries in the dictionary which you define.
Objects
Variables which are more complex and can hold other variables, and generally know how to do things to themselves. Basically everything in JavaScript is an object, although some can't be changed / varied.
Functions
Objects which contain statements which cause the computer execute their instructions. They can be executed by following them with opening and closing parentheses, which can contain arguments. This is referred to as "calling" the function.
Method
Functions in objects.
Parameters
Variables in the definition of a function which are replaced by arguments when the function is called. This lets us use the same function to act on different variables.
Arguments
Normally, arguments are listed inside parenthesis () after the function name when we call it.
Operators
+, -, *, /, stuff like that. Operators are just functions with very short weird names that take arguments from either side
Values
Raw data, like numbers and strings of characters (which are just numbers in ASCII (everything in a computer is a number))
Encapsulation
Putting boxes inside other boxes.
Information Hiding
Making the inner boxes invisible so they don't clutter up the view
Abstraction
Applying a general idea (layout or Method) over many specific Instantiations. See "this"
Instantiation
Copying the layout of a box and filling the spaces with new data
Inheritance
Re-using the layout of one box and extending it into a more complex layout
Mutable
Able to change
Attribute
Variable inside an object
Constructor
Function that initializes a new object