JavaScript/CheatSheet

From Wiki

Style guides

Data Types

var num = 8;                               // number
var strg = "Joe";                          // string
var vobj = {first: "John", last:"Doe"};    // object
var booli = false;                         // boolean
var arr = ["HTML","CSS","JS"];             // array
var a; typeof a;                           // undefined
var a = null;                              // value null

const pi = 3.14;

typeof strg                                // =string

Arrays

var title = new Array();
title[0] = "Mr.";
title[1] = "Mrs.";
element = title.slice(-1);
concat()
filter()
forEach()
join()
map()
pop()
push()
reduce()
reverse()
shift()
slice()
splice()
sort()

Objects (key : value)

var user = { firstname: "Peter", lastname: "Johnson" }
user.phone = "01234"
user.firstname
user["firstname"]
var result = arrayName.filter(obj => {
  return obj.key === value
})

Strings

charAt()
charCodeAt()
concat()
fromCharCode()
indexOf()
lastIndexOf()
match()
replace()              zpl = zpl.replace("1234567890",msg.serialnumber)
search()
slice()                checksum = String(sum).slice(-1)  # get last digit
split() 
substr()
substring()
toLowerCase()
toUpperCase()
valueOf()

trim()                 remove whitespace from both sides
trimStart()
trimEnd()

includes()             if (string.includes(".prn")) {}
sinngle-quote
  var str = 'test'                    // use single-quotes for strings

double-quote
  var str = "test"

back-tick
  var str = `text and ${variable}`    // use back-ticks when multiline or interpolation 


  • Remove ANSI colors from string
payload = payload.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, '');
  • add leading zeros
var string = "000000" + integer.toString()
string = string.substr(string.length-6)

Conversions

string = integer.toString()

integer = parseInt(string) + 1


Functions

function addition(number1, number2) {
  return number1 + number2;
}


var person = {
    name: 'Peter',
    getName: function () {
        return this.name;
    }
}

person.getName()

Operators

+           Addition
-           Subtraction
*           Multiplication
/           Division
(...)       Grouping operator, operations within brackets are executed earlier than those outside
%           Modulus (remainder )
++          Increment numbers
--          Decrement numbers

==          Equal to
===         Equal value and equal type
!=          Not equal
!==         Not equal value or not equal type
>           Greater than
<           Less than
>=          Greater than or equal to
<=          Less than or equal to
?           Ternary operator

&&          Logical and
||          Logical or
!           Logical not

&           AND statement
|           OR statement
~           NOT
^           XOR
<<          Left shift
>>          Right shift
>>>         Zero fill right shift


if - else

if (condition) {
    // if condition is met
} else {
    // if condition is not met
}

switch

switch(var) {
  case 1:
    // code 
    break;
  case 2:
    // code
    break;
  default:
    // code
} 

Loops

for (var i = 0; i < 10; i++){
}

while (i < 10) {
  i++;
}

do {
  i++;
} while (i < 10);

break
continue

Escape Characters

\'      Single quote
\"      Double quote

\\      Backslash
\b      Backspace
\f      Form feed
\n      New line
\r      Carriage return
\t      Horizontal tabulator
\v      Vertical tabulator

Dates & Times

d = new Date();
var year = d.getFullYear();
var month = d.getMonth() + 1;
function ISO8601_week_no() 
  {
     dt = new Date(); 
     var tdt = new Date(dt.valueOf());
     var dayn = (dt.getDay() + 6) % 7;
     tdt.setDate(tdt.getDate() - dayn + 3);
     var firstThursday = tdt.valueOf();
     tdt.setMonth(0, 1);
     if (tdt.getDay() !== 4) 
       {
      tdt.setMonth(0, 1 + ((4 - tdt.getDay()) + 7) % 7);
        }
     return 1 + Math.ceil((firstThursday - tdt) / 604800000);
  }

Random

Math.random();                         float (0.0 - 1.0)

Math.floor(Math.random() * 10);        int (0 - 9)
Math.floor(Math.random() * 11);        int (0 - 10)


Math.floor(Math.random() * (max - min) ) + min;