JavaScript/CheatSheet: Difference between revisions
m (→Arrays) |
mNo edit summary |
||
(40 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== | == Style guides == | ||
* [https://github.com/airbnb/javascript AirBnb] | |||
== Comments == | |||
<pre> | <pre> | ||
// single-line comment | |||
/* | |||
multi-line comment | |||
*/ | |||
</pre> | |||
typeof strg | == Data types & variable declaration == | ||
<pre> | |||
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 | |||
// newer declarations (>2015) | |||
const pi = 3.14; // | |||
let num = 8; // | |||
typeof strg // =string | |||
</pre> | </pre> | ||
Line 19: | Line 33: | ||
title[0] = "Mr."; | title[0] = "Mr."; | ||
title[1] = "Mrs."; | title[1] = "Mrs."; | ||
element = title.slice(-1); | |||
</pre> | </pre> | ||
* Methods | |||
<pre> | <pre> | ||
concat() | concat() both = array1.concat(array2) // joins two or more arrays | ||
join() text = array.join() // joins array to form one long string | |||
map() newAr = array.map(Math.sqrt) // return a new array after function | |||
join() | pop() // remove last element | ||
map() | shift() // remove first element | ||
pop() | unshift() // add new element to beginning | ||
push() | push() // add new element to end | ||
reduce() | reduce() | ||
reverse() | reverse() // reverse the order of elements | ||
slice() array,slice(start, end) | |||
slice() | splice() array.splice(position, n, "New"); // at position, remove n-elements and insert new elements | ||
splice() | forEach() array.forEach(function) // calls a function for each element | ||
sort() | sort() | ||
filter() | |||
</pre> | |||
* Properties | |||
<pre> | |||
length | |||
</pre> | |||
== Objects (key : value) == | |||
<pre> | |||
var user = { firstname: "Peter", lastname: "Johnson" } | |||
user.phone = "01234" | |||
</pre> | |||
<pre> | |||
user.firstname | |||
user["firstname"] | |||
</pre> | |||
<pre> | |||
var result = arrayName.filter(obj => { | |||
return obj.key === value | |||
}) | |||
</pre> | </pre> | ||
Line 46: | Line 85: | ||
lastIndexOf() | lastIndexOf() | ||
match() | match() | ||
replace() | replace() zpl = zpl.replace("1234567890",msg.serialnumber) | ||
search() | search() | ||
slice() | slice() checksum = String(sum).slice(-1) # get last digit | ||
split() | split() | ||
substr() | substr() | ||
substring() | substring() | ||
Line 55: | Line 94: | ||
toUpperCase() | toUpperCase() | ||
valueOf() | valueOf() | ||
trim() remove whitespace from both sides | |||
trimStart() | |||
trimEnd() | |||
includes() if (string.includes(".prn")) {} | |||
</pre> | |||
<pre> | |||
single-quote | |||
var str = 'test' // use single-quotes for strings | |||
back-tick | |||
var str = `text and ${variable}` // use back-ticks when multiline or interpolation | |||
double-quote | |||
var str = "test" | |||
</pre> | |||
* Remove ANSI colors from string | |||
<blockquote> | |||
<pre> | |||
payload = payload.replace(/[\u001b\u009b][[()#;?]*(?:[0-9]{1,4}(?:;[0-9]{0,4})*)?[0-9A-ORZcf-nqry=><]/g, ''); | |||
</pre> | |||
</blockquote> | |||
* add leading zeros | |||
<blockquote> | |||
<pre> | |||
var string = "000000" + integer.toString() | |||
string = string.substr(string.length-6) | |||
</pre> | |||
</blockquote> | |||
== Conversions == | |||
<pre> | |||
string = integer.toString() # integer -> string | |||
String(123) # integer -> string | |||
toExponential() | |||
toFixed() | |||
toPrecision() | |||
integer = parseInt(string) + 1 # string -> integer | |||
float = parseFloat(string) # string -> float | |||
jsonvar = JSON.parse(string) # string -> json | |||
number = Number("1.23") # string -> number | |||
</pre> | |||
* Date & Time | |||
<pre> | |||
dt = new Date(); | |||
Number(dt) # date -> number | |||
dt.getTime() # date -> number | |||
String(dt) # date -> string | |||
dt.toString() # date -> string | |||
</pre> | |||
== Functions == | |||
<pre> | |||
function addition(number1, number2) { | |||
return number1 + number2; | |||
} | |||
var person = { | |||
name: 'Peter', | |||
getName: function () { | |||
return this.name; | |||
} | |||
} | |||
person.getName() | |||
</pre> | </pre> | ||
Line 99: | Line 211: | ||
// if condition is not met | // if condition is not met | ||
} | } | ||
</pre> | |||
== switch == | |||
<pre> | |||
switch(var) { | |||
case 1: | |||
// code | |||
break; | |||
case 2: | |||
// code | |||
break; | |||
default: | |||
// code | |||
} | |||
</pre> | </pre> | ||
== Loops == | == Loops == | ||
<pre> | <pre> | ||
for | for (var i = 0; i < 10; i++){ | ||
while | } | ||
do while | |||
while (i < 10) { | |||
i++; | |||
} | |||
do { | |||
i++; | |||
} while (i < 10); | |||
break | break | ||
continue | continue | ||
Line 123: | Line 257: | ||
\v Vertical tabulator | \v Vertical tabulator | ||
</pre> | </pre> | ||
== Dates & Times == | |||
<pre> | |||
d = new Date(); | |||
var year = d.getFullYear(); | |||
var month = d.getMonth() + 1; | |||
</pre> | |||
<pre> | |||
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); | |||
} | |||
</pre> | |||
== Random == | |||
<pre> | |||
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; | |||
</pre>__FORCETOC__ | |||
[[Category:Programming]] |
Latest revision as of 15:14, 28 September 2024
Style guides
Comments
// single-line comment /* multi-line comment */
Data types & variable declaration
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 // newer declarations (>2015) const pi = 3.14; // let num = 8; // typeof strg // =string
Arrays
var title = new Array(); title[0] = "Mr."; title[1] = "Mrs."; element = title.slice(-1);
- Methods
concat() both = array1.concat(array2) // joins two or more arrays join() text = array.join() // joins array to form one long string map() newAr = array.map(Math.sqrt) // return a new array after function pop() // remove last element shift() // remove first element unshift() // add new element to beginning push() // add new element to end reduce() reverse() // reverse the order of elements slice() array,slice(start, end) splice() array.splice(position, n, "New"); // at position, remove n-elements and insert new elements forEach() array.forEach(function) // calls a function for each element sort() filter()
- Properties
length
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")) {}
single-quote var str = 'test' // use single-quotes for strings back-tick var str = `text and ${variable}` // use back-ticks when multiline or interpolation double-quote var str = "test"
- 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 -> string String(123) # integer -> string toExponential() toFixed() toPrecision() integer = parseInt(string) + 1 # string -> integer float = parseFloat(string) # string -> float jsonvar = JSON.parse(string) # string -> json number = Number("1.23") # string -> number
- Date & Time
dt = new Date(); Number(dt) # date -> number dt.getTime() # date -> number String(dt) # date -> string dt.toString() # date -> string
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;