JavaScript Cheat Sheet & Quick Reference
JavaScript Cheat Sheet & Quick Reference
JavaScript
A JavaScript cheat sheet with the most important concepts, functions, methods, and more. A
complete quick reference for beginners.
# Getting Started
Introduction
Console
Numbers
let amount = 6;
let price = 4.99;
Variables
https://quickref.me/javascript 1/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
let x = null;
let name = "Tammy";
const found = false;
var a;
Strings
// => 21
console.log(single.length);
Arithmetic Operators
5 + 5 = 10 // Addition
10 - 5 = 5 // Subtraction
5 * 10 = 50 // Multiplication
10 / 5 = 2 // Division
10 % 5 = 0 // Modulo
Comments
/*
The below configuration must be
changed before deployment.
*/
Assignment Operators
console.log(number);
// => 120
https://quickref.me/javascript 2/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
String Interpolation
let age = 7;
// String concatenation
'Tommy is ' + age + ' years old.';
// String interpolation
`Tommy is ${age} years old.`;
let Keyword
let count;
console.log(count); // => undefined
count = 10;
console.log(count); // => 10
const Keyword
const numberOfColumns = 4;
# JavaScript Conditionals
if Statement
if (isMailSent) {
console.log('Mail sent to recipient');
}
Ternary Operator
var x=1;
// => true
result = (x == 1) ? true : false;
https://quickref.me/javascript 3/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
Operators
Comparison Operators
1 > 3 // false
3 > 1 // true
250 >= 250 // true
1 === 1 // true
1 === 2 // false
1 === '1' // false
Logical Operator !
// => false
console.log(oppositeValue);
else if
https://quickref.me/javascript 4/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
console.log('Medium');
} else if (size > 4) {
console.log('Small');
} else {
console.log('Tiny');
}
// Print: Small
switch Statement
switch (food) {
case 'oyster':
console.log('The taste of the sea');
break;
case 'pizza':
console.log('A delicious pie');
break;
default:
console.log('Enjoy your meal');
}
== vs ===
0 == false // true
0 === false // false, different type
1 == "1" // true, automatic type conversion
1 === "1" // false, different type
null == undefined // true
null === undefined // false
'0' == false // true
'0' === false // false
The == just check the value, === check both the value and the type.
# JavaScript Functions
Functions
https://quickref.me/javascript 5/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
Anonymous Functions
// Named function
function rocketToMars() {
return 'BOOM!';
}
// Anonymous function
const rocketToMars = function() {
return 'BOOM!';
}
With no arguments
https://quickref.me/javascript 6/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
return Keyword
// With return
function sum(num1, num2) {
return num1 + num2;
}
Calling Functions
Function Expressions
Function Parameters
Function Declaration
https://quickref.me/javascript 7/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
# JavaScript Scope
Scope
function myFunction() {
if (isLoggedIn == true) {
const statusMessage = 'Logged in.';
}
// Uncaught ReferenceError...
console.log(statusMessage);
Global Variables
function printColor() {
console.log(color);
}
let vs var
✔️
// This is the Max Scope for 'let'
// i accessible
❌
}
// i not accessible
https://quickref.me/javascript 8/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
✔️
for (var i = 0; i < 3; i++) {
// i accessible
✔️
}
// i accessible
var is scoped to the nearest function block, and let is scoped to the nearest enclosing block.
The variable has its own copy using let, and the variable has shared copy using var.
# JavaScript Arrays
Arrays
Property .length
numbers.length // 4
Index
https://quickref.me/javascript 9/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
console.log(myArray[0]); // 100
console.log(myArray[1]); // 200
Mutable chart
push ✔ ✔
pop ✔ ✔
unshift ✔ ✔
shift ✔ ✔
Method .push()
Add items to the end and returns the new array length.
Method .pop()
Remove an item from the end and returns the removed item.
Method .shift()
Remove an item from the beginning and returns the removed item.
Method .unshift()
https://quickref.me/javascript 10/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
Method .concat()
// => [ 4, 3, 2, 1 ]
[newFirstNumber].concat(numbers)
// => [ 3, 2, 1, 4 ]
numbers.concat(newFirstNumber)
if you want to avoid mutating your original array, you can use concat.
# JavaScript Loops
While Loop
while (condition) {
// code block to be executed
}
let i = 0;
while (i < 5) {
console.log(i);
i++;
}
Reverse Loop
https://quickref.me/javascript 11/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
// => 2. banana
// => 1. orange
// => 0. apple
Do…While Statement
x = 0
i = 0
do {
x = x + i;
console.log(x)
i++;
} while (i < 5);
// => 0 1 3 6 10
For Loop
// => 0, 1, 2, 3
Break
Continue
https://quickref.me/javascript 12/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
for...in loop
for...of loop
# JavaScript Iterators
Functions Assigned to Variables
let f = plusFive;
plusFive(3); // 8
// Since f has a function value, it can be invoked.
f(9); // 14
Callback Functions
console.log(sum); // 10
console.log(announcements);
https://quickref.me/javascript 14/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
numbers.forEach(number => {
console.log(number);
});
# JavaScript Objects
Accessing Properties
const apple = {
color: 'Green',
price: { bulk: '$3/kg', smallQty: '$4/kg' }
};
console.log(apple.color); // => Green
console.log(apple.price.bulk); // => $3/kg
Naming Properties
Non-existent properties
const classElection = {
date: 'January 12'
};
console.log(classElection.place); // undefined
https://quickref.me/javascript 15/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
Mutable
const student = {
name: 'Sheldon',
score: 100,
grade: 'A',
}
console.log(student)
// { name: 'Sheldon', score: 100, grade: 'A' }
delete student.score
student.grade = 'F'
console.log(student)
// { name: 'Sheldon', grade: 'F' }
student = {}
// TypeError: Assignment to constant variable.
const person = {
name: 'Tom',
age: '22',
};
const {name, age} = person;
console.log(name); // 'Tom'
console.log(age); // '22'
Delete operator
const person = {
firstName: "Matilda",
age: 27,
hobby: "knitting",
goal: "learning JavaScript"
};
console.log(person);
/*
{
firstName: "Matilda"
age: 27
goal: "learning JavaScript"
https://quickref.me/javascript 16/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
}
*/
Objects as arguments
const origNum = 8;
const origObj = {color: 'blue'};
changeItUp(origNum, origObj);
this Keyword
const cat = {
name: 'Pipey',
age: 8,
whatName() {
return this.name
}
};
console.log(cat.whatName()); // => Pipey
Factory functions
name: name,
age: age,
breed: breed,
bark() {
console.log('Woof!');
}
};
};
Methods
const engine = {
// method shorthand, with one argument
start(adverb) {
console.log(`The engine starts up ${adverb}...`);
},
// anonymous arrow function expression with no arguments
sputter: () => {
console.log('The engine sputters...');
},
};
engine.start('noisily');
engine.sputter();
const myCat = {
_name: 'Dottie',
get name() {
return this._name;
},
set name(newName) {
this._name = newName;
}
};
https://quickref.me/javascript 18/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
# JavaScript Classes
Static Methods
class Dog {
constructor(name) {
this._name = name;
}
introduce() {
console.log('This is ' + this._name + ' !');
}
// A static method
static bark() {
console.log('Woof!');
}
}
Class
class Song {
constructor() {
this.title;
this.author;
}
play() {
console.log('Song playing!');
}
}
Class Constructor
class Song {
constructor(title, artist) {
https://quickref.me/javascript 19/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
this.title = title;
this.artist = artist;
}
}
Class Methods
class Song {
play() {
console.log('Playing!');
}
stop() {
console.log('Stopping!');
}
}
extends
// Parent class
class Media {
constructor(info) {
this.publishDate = info.publishDate;
this.name = info.name;
}
}
// Child class
class Song extends Media {
constructor(songData) {
super(songData);
this.artist = songData.artist;
}
}
https://quickref.me/javascript 20/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
# JavaScript Modules
Export
// myMath.js
// Default export
export default function add(x,y){
return x + y
}
// Normal export
export function subtract(x,y){
return x - y
}
// Multiple exports
function multiply(x,y){
return x * y
}
function duplicate(x){
return x * 2
}
export {
multiply,
duplicate
}
Import
// main.js
import add, { subtract, multiply, duplicate } from './myMath.js';
console.log(add(6, 2)); // 8
console.log(subtract(6, 2)) // 4
console.log(multiply(6, 2)); // 12
console.log(duplicate(5)) // 10
// index.html
<script type="module" src="main.js"></script>
Export Module
// myMath.js
https://quickref.me/javascript 21/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
function add(x,y){
return x + y
}
function subtract(x,y){
return x - y
}
function multiply(x,y){
return x * y
}
function duplicate(x){
return x * 2
}
Require Module
// main.js
const myMath = require('./myMath.js')
console.log(myMath.add(6, 2)); // 8
console.log(myMath.subtract(6, 2)) // 4
console.log(myMath.multiply(6, 2)); // 12
console.log(myMath.duplicate(5)) // 10
# JavaScript Promises
Promise states
https://quickref.me/javascript 22/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
}
});
Executor function
setTimeout()
setTimeout(loginAlert, 6000);
.then() method
promise.then((res) => {
console.log(res);
}, (err) => {
console.error(err);
});
.catch() method
promise.then((res) => {
console.log(value);
});
https://quickref.me/javascript 23/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
promise.catch((err) => {
console.error(err);
});
Promise.all()
https://quickref.me/javascript 24/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
Creating
promise.then(res => {
return res === 'Alan' ? Promise.resolve('Hey Alan!') : Promise.reject('Who are y
}).then((res) => {
console.log(res)
}, (err) => {
console.error(err)
});
https://quickref.me/javascript 25/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
# JavaScript Async-Await
Asynchronous
function helloWorld() {
return new Promise(resolve => {
setTimeout(() => {
resolve('Hello World!');
}, 2000);
});
}
Resolving Promises
function helloWorld() {
return new Promise(resolve => {
setTimeout(() => {
resolve('Hello World!');
}, 2000);
https://quickref.me/javascript 26/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
});
}
Error Handling
try {
let user = JSON.parse(json); // <-- no errors
console.log( user.name ); // no name!
} catch (e) {
console.error( "Invalid JSON data!" );
}
function helloWorld() {
return new Promise(resolve => {
setTimeout(() => {
resolve('Hello World!');
}, 2000);
});
}
# JavaScript Requests
JSON
https://quickref.me/javascript 27/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
const jsonObj = {
"name": "Rick",
"id": "11A",
"level": 4
};
XMLHttpRequest
XMLHttpRequest is a browser-level API that enables the client to script data transfers via JavaScript,
NOT part of the JavaScript language.
GET
req.send();
POST
const data = {
fish: 'Salmon',
weight: '1.5 KG',
units: 5
};
const xhr = new XMLHttpRequest();
xhr.open('POST', '/inventory/add');
xhr.responseType = 'json';
xhr.send(JSON.stringify(data));
xhr.onload = () => {
console.log(xhr.response);
};
fetch api
fetch(url, {
method: 'POST',
https://quickref.me/javascript 28/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
headers: {
'Content-type': 'application/json',
'apikey': apiKey
},
body: data
}).then(response => {
if (response.ok) {
return response.json();
}
throw new Error('Request failed!');
}, networkError => {
console.log(networkError.message)
})
}
JSON Formatted
fetch('url-that-returns-JSON')
.then(response => response.json())
.then(jsonResponse => {
console.log(jsonResponse);
});
fetch('url')
.then(
response => {
console.log(response);
},
rejection => {
console.error(rejection.message);
);
fetch('https://api-xxx.com/endpoint', {
method: 'POST',
body: JSON.stringify({id: "200"})
}).then(response => {
if(response.ok){
return response.json();
}
throw new Error('Request failed!');
}, networkError => {
console.log(networkError.message);
https://quickref.me/javascript 29/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
}).then(jsonResponse => {
console.log(jsonResponse);
})
Related Cheatsheet
Recent Cheatsheet
https://quickref.me/javascript 30/31
3/1/24, 2:01 PM JavaScript Cheat Sheet & Quick Reference
https://quickref.me/javascript 31/31