You are on page 1of 4

CHEAT SHEET

JAVASCRIPT WEB PROGRAMMING


Created by @Manz ( http://twitter.com/Manz ) http://www.emezeta.com/

n Number() = 42 s String() = 'text' a Array() = [1, 2, 3]


PROPERTIES PROPERTIES PROPERTIES

n .POSITIVE_INFINITY +∞ equivalent n .length string size n .length number of elements


n .NEGATIVE_INFINITY -∞ equivalent METHODS METHODS
n .MAX_VALUE largest positive value s .charAt(index) char at position [i] b .isArray(obj) check if obj is array
n .MIN_VALUE smallest positive value n .charCodeAt(index) unicode at pos. b .includes(obj, from) include element?
n .EPSILON diff between 1 & smallest >1 s .fromCharCode(n1, n2...) code to char n .indexOf(obj, from) find elem. index
n .NaN not-a-number value s .concat(str1, str2...) combine text + n .lastIndexOf(obj, from) find from end
METHODS
b .startsWith(str, size) check beginning s .join(sep) join elements w/separator
s .toExponential(dec) exp. notation b .endsWith(str, size) check ending a .slice(ini, end) return array portion
s .toFixed(dec) fixed-point notation a .concat(obj1, obj2...) return joined array
b .includes(str, from) include substring?
s .toPrecision(p) change precision MODIFY SOURCE ARRAY METHODS
n .indexOf(str, from) find substr index
b .isFinite(n) check if number is finite a .copyWithin(pos, ini, end) copy elems
n .lastIndexOf(str, from) find from end
b .isInteger(n) check if number is int. a .fill(obj, ini, end) fill array with obj
n .search(regex) search & return index
b .isNaN(n) check if number is NaN a .reverse() reverse array & return it
n .localeCompare(str, locale, options)
n .parseInt(s, radix) string to integer a .sort(cf(a,b)) sort array (unicode sort)
a .match(regex) matches against string
n a .splice(ini, del, o1, o2...) del&add elem
.parseFloat(s, radix) string to float s .repeat(n) repeat string n times
ITERATION METHODS
s .replace(str|regex, newstr|func)
r Regexp() = /.+/ig ai .entries() iterate key/value pair array
s .slice(ini, end) str between ini/end
PROPERTIES ai .keys() iterate only keys array
s .substr(ini, len) substr of len length
n .lastIndex index to start global regexp ai .values() iterate only values array
s .substring(ini, end) substr fragment
s .flags active flags of current regexp a .split(sep|regex, limit) divide string CALLBACK FOR EACH METHODS

b .global flag g (search all matches) s .toLowerCase() string to lowercase b .every(cb(e,i,a), arg) test until false
b .ignoreCase flag i (match lower/upper) s .toUpperCase() string to uppercase b .some(cb(e,i,a), arg) test until true
b .multiline flag m (match multiple lines) s a .map(cb(e,i,a), arg) make array
.trim() remove space from begin/end
b .sticky flag y (search from lastIndex) a .filter(cb(e,i,a), arg) make array w/true
s .raw`` template strings with ${vars}
b .unicode flag u (enable unicode feat.) o .find(cb(e,i,a), arg) return elem w/true
s .source current regexp (w/o slashs) n
d Date() .findIndex(cb(e,i,a), arg) return index
METHODS
METHODS .forEach(cb(e,i,a), arg) exec for each
a .exec(str) exec search for a match
n .UTC(y, m, d, h, i, s, ms) timestamp o .reduce(cb(p,e,i,a), arg) accumulative
b .test(str) check if regexp match w/str
n .now() timestamp of current time o .reduceRight(cb(p,e,i,a), arg) from end
CLASSES
n .parse(str) convert str to timestamp ADD/REMOVE METHODS
. any character \t tabulator
n .setTime(ts) set UNIX timestamp o .pop() remove & return last element
\d digit [0-9] \r carriage return
n .getTime() return UNIX timestamp n .push(o1, o2...) add element & return length
\D no digit [^0-9] \n line feed
\w any alphanumeric char [A-Za-z0-9_] UNIT SETTERS (ALSO .setUTC*() methods) o .shift() remove & return first element
\W no alphanumeric char [^A-Za-z0-9_] n .setFullYear(y, m, d) set year (yyyy) n .unshift(o1, o2...) add element & return len
\s any space char (space, tab, enter...) n .setMonth(m, d) set month (0-11) UNSHIFT PUSH
\S no space char (space, tab, enter...) n .setDate(d) set day (1-31) [1,2,3]
\xN char with code N [\b] backspace b Boolean() = true / false SHIFT POP
n .setHours(h, m, s, ms) set hour (0-23)
\uN char with unicode N \0 NUL char n .setMinutes(m, s, ms) set min (0-59) no own properties or methods
CHARACTER SETS OR ALTERNATION
n .setSeconds(s, ms) set sec (0-59)
[abc] match any character set n .setMilliseconds(ms) set ms (0-999) f Function() = function(a, b) { ... }
[^abc] match any char. set not enclosed UNIT GETTERS (ALSO .getUTC*() methods) PROPERTIES
a|b match a or b n .getDate() return day (1-31) o .length return number of arguments
BOUNDARIES
n .getDay() return day of week (0-6) s .name return name of function
^ begin of input $ end of input n .getMonth() return month (0-11) o .prototype prototype object
\b zero-width word boundary n .getFullYear() return year (yyyy) METHODS
\B zero-width non-word boundary n .getHours() return hour (0-23) o .call(newthis, arg1, arg2...) change this
GROUPING n .getMinutes() return minutes (0-59) o .apply(newthis, arg1) with args array
(x) capture group (?:x) no capture group n .getSeconds() return seconds (0-59) o .bind(newthis, arg1, arg2...) bound func
\n reference to group n captured n .getMilliseconds() return ms (0-999)
QUANTIFIERS LOCALE & TIMEZONE METHODS n number d date
x* preceding x 0 or more times {0,} n .getTimezoneOffset() offset in mins n NaN (not-a-number) r regular expresion
x+ preceding x 1 or more times {1,} s .toLocaleDateString(locale, options) s string f function
x? preceding x 0 or 1 times {0,1} s .toLocaleTimeString(locale, options) b boolean (true/false) o object
x{n} n ocurrences of x s .toLocaleString(locale, options) a array undefined
x{n,} at least n ocurrences of x s .toUTCString() return UTC date only available on ECMAScript 6
x{n,m} between n & m ocurrences of x s .toDateString() return American date n static (ex: Math.random())
ASSERTIONS s .toTimeString() return American time n non-static (ex: new Date().getDate())
x(?=y) x (only if x is followed by y) s .toISOString() return ISO8601 date argument required
x(?!y) x (only if x is not followed by y) s .toJSON() return date ready for JSON argument optional
CHEAT SHEET

JAVASCRIPT WEB PROGRAMMING


Created by @Manz ( http://twitter.com/Manz ) http://www.emezeta.com/

Math o Object() = {key: value, key2: value2} s Set() WeakSet only obj as items
PROPERTIES PROPERTIES PROPERTIES

n .E Euler's constant o .constructor return ref. to object func. n .size return number of items
n .LN2 natural logarithm of 2 METHODS METHODS
n .LN10 natural logarithm of 10 o .assign(dst, src1, src2...) copy values s .add(item) add item to set ws
n .LOG2E base 2 logarithm of E o .create(proto, prop) create obj w/prop b .has(item) check if item exists ws
n .LOG10E base 10 logarithm of E o .defineProperties(obj, prop) b .delete(item) del item & return if del ws
n .PI ratio circumference/diameter o .defineProperty(obj, prop, desc) .clear() remove all items from set
n .SQRT1_2 square root of 1/2 o .freeze(obj) avoid properties changes ITERATION METHODS
n .SQRT2 square root of 2 o .getOwnPropertyDescriptor(obj, prop) si .entries() iterate items
METHODS a .getOwnPropertyNames(obj) si .values() iterate only value of items
a .getOwnPropertySymbols(obj)
n .abs(x) absolute value CALLBACK FOR EACH METHODS
o .getPrototypeOf(obj) return prototype
n .cbrt(x) cube root .forEach(cb(e,i,a), arg) exec for each
b .is(val1, val2) check if are same value
n .clz32(x) return leading zero bits (32)
b .isExtensible(obj) check if can add prop m Map() WeakMap only obj as keys
n .exp(x) return ex
b .isFrozen(obj) check if obj is frozen
n .expm1(x) return ex-1 PROPERTIES
b .isSealed(obj) check if obj is sealed n .size return number of elements
n .hypot(x1, x2...) length of hypotenuse a .keys(obj) return only keys of object
n .imul(a, b) signed multiply o .preventExtensions(obj) avoid extend
METHODS

n .log(x) natural logarithm (base e) o .seal(obj) prop are non-configurable m .set(key, value) add pair key=value wm
n .log1p(x) natural logarithm (1+x) o .setPrototypeOf(obj, prot) change prot o .get(key) return value of key wm
n .log10(x) base 10 logarithm INSTANCE METHODS
b .has(key) check if key exist wm
n .log2(x) base 2 logarithm b .delete(key) del elem. & return if ok wm
b .hasOwnProperty(prop) check if exist .clear() remove all elements from map
n .max(x1, x2...) return max number
b .isPrototypeOf(obj) test in another obj
n .min(x1, x2...) return min number ITERATION METHODS
b .propertyIsEnumerable(prop)
n .pow(base, exp) return baseexp mi .entries() iterate elements
s .toString() return equivalent string
n .random() float random number [0,1) mi .keys() iterate only keys
s .toLocaleString() return locale version
n .sign(x) return sign of number mi .values() iterate only values
o .valueOf() return primitive value
n .sqrt(x) square root of number CALLBACK FOR EACH METHODS
ROUND METHODS
p Promise() .forEach(cb(e,i,a), arg) exec for each
n .ceil(x) superior round (smallest) METHODS
n .floor(x) inferior round (largest) p .all(obj) return promise Symbol()
n .fround(x) nearest single precision p .catch(onRejected(s)) = .then(undef,s) PROPERTIES
n .round(x) round (nearest integer) p .then(onFulfilled(v), onRejected(s)) s .iterator specifies default iterator
n .trunc(x) remove fractional digits p .race(obj) return greedy promise (res/rej) s .match specifies match of regexp
TRIGONOMETRIC METHODS p .resolve(obj) return resolved promise s .species specifies constructor function
n .acos(x) arccosine p .reject(reason) return rejected promise METHODS
n .acosh(x) hyperbolic arccosine s .for(key) search existing symbols
n .asin(x) arcsine p Proxy() Reflect same methods (not func) s .keyFor(sym) return key from global reg
n .asinh(x) hyperbolic arcsine METHODS
n .atan(x) arctangent o .apply(obj, arg, arglist) trap function call g Generator() = function* () { ... }
n .atan2(x, y) arctangent of quotient x/y o .construct(obj, arglist) trap new oper METHODS
n .atanh(x) hyperbolic arctangent o .defineProperty(obj, prop, desc) o .next(value) return obj w/{value,done}
n .cos(x) cosine o .deleteProperty(obj, prop) trap delete o .return(value) return value & true done
n .cosh(x) hyperbolic cosine o .enumerate(obj) trap for...in .throw(except) throw an error
n .sin(x) sine o .get(obj, prop, rec) trap get property
o .getOwnPropertyDescriptor(obj, prop) Others
n .sinh(x) hyperbolic sine
n .tan(x) tangent o .getPrototypeOf(obj) FAST TIPS

n .tanh(x) hyperbolic tangent o .has(obj, prop) trap in operator var declare variable
o .ownKeys(obj) let declare block scope local variable
o .preventExtensions(obj) const declare constant (read-only)
JSON
o .set(obj, prop, value) trap set property func(a=1) default parameter value
METHODS
o .setPrototypeOf(obj, proto) func(...a) rest argument (spread operator)
n .parse(str, tf(k,v)) parse string to object
(a) => { ... } function equivalent (fat arrow)
n .stringify(obj, repf|wl, sp) convert to str globals
`string ${a}` template with variables
METHODS
e Error() 0bn binary (2) number n to decimal
o eval(str) evaluate javascript code 0on octal (8) number n to decimal
PROPERTIES
b isFinite(obj) check if is a finite number 0xn hexadecimal (16) number n to decimal
s .name return name of error b isNaN(obj) check if is not a number
s .message return description of error for (i in array) { ... } iterate array, i = index
n parseInt(s, radix) string to integer for (e of array) { ... } iterate array, e = value
n parseFloat(s, radix) string to float
EvalError(), InternalError(), RangeError(), URIError(), class B extends A () { } class sugar syntax
ReferenceError(), SyntaxError(), TypeError() s encodeURIComponent(URI) = to %3D
s decodeURIComponent(URI) %3D to =
CHEAT SHEET

JAVASCRIPT WEB PROGRAMMING


Created by @Manz ( http://twitter.com/Manz ) http://www.emezeta.com/

window = Browser global object screen = info about screen / resolution performance = info about performance
PROPERTIES PROPERTIES PROPERTIES

b .closed check if window is closed n .availTop top-from space available o .navigation info about redir/type nav.
n .devicePixelRatio ratio vertical size pix n .availLeft left-from space available o .timing info about latency-load perf.
b .fullScreen check if window is fullscreen n .availWidth width space available METHODS
n .innerWidth width size (incl. scrollbar) n .availHeight height space available n .now() high precision timestamp
n .innerHeight height size (incl. scrollbar) n .width screen width resolution
n .outerWidth width size (incl. browser) n .height screen height resolution navigator = info about browser
n .outerHeight height size (incl. browser) n .colorDepth screen color depth (bits) PROPERTIES

n .length number of frames n .pixelDepth screen pixel depth (bits) b .cookieEnabled browser cookies on?
s .name inner name of window METHODS n .doNotTrack DNT privacy enabled?
s .status bottom statusbar text b .lockOrientation(mode|modearray) o .geolocation user-info geolocation
API/OBJECTS PROPERTIES b .unlockOrientation() remove locks s .language language in browser
o .applicationCache offline resources API n .maxTouchPoints max on device
o .console console browser API console = unofficial console browser API b .onLine browser work in online mode?
o .crypto cryptographic API METHODS s .userAgent identify browser of user
o .history session page history API .assert(cond, str1|obj1...) set a assert METHODS

o .location information about URL API .count(str) count (show number times) n .vibrate(n|pattern) use device vibration
o .localStorage storage for site domain .dir(obj) show object (expanded debug)
o .sessionStorage storage until closed .group() open new message group location = info about current URL
o .navigator information about browser .groupCollapsed() open new group coll. PROPERTIES

o .performance data about performance .groupEnd() close previous group s .href full document url
SCREEN PROPERTIES .table(array|obj, colnames) show table s .protocol https://www.emezeta.com/
.trace() show code trace s .username https://user:pass@www
o .screen information about screen
.timeStamp(str) put time on timeline s .password https://user:pass@www
n .screenX horizontal pos browser/screen
s .host https://emezeta.com:81/
n .screenY vertical pos browser/screen PERFORMANCE METHODS
s .hostname https://emezeta.com:81/
n .pageXOffset horizontal pixels scrolled .profile(name) start performance profile
s .port https://emezeta.com:81/
n .pageYOffset vertical pixels scrolled .profileEnd(name) stop perf. profile
s .pathname http://emezeta.com/42/
WINDOW PROPERTIES .time(name) start performance timer
s .hash http://emezeta.com/#contacto
o .opener window that opened this window .timeEnd(name) stop perf. timer
s .search http://google.com/?q=emezeta
o .parent parent of current window/frame LOG LEVEL METHODS
o .searchParams search params object
o .self this window (equal to .window) .log(str1|obj1...) output message s .origin source origin of document url
o .top top window of current win/frame .info(str1|obj1...) output information
METHODS .warn(str1|obj1...) output warning onClick="..." (HTML) .onclick = (JS func) 'click' (Listener)
s .btoa(str) encode string to base64 .error(str1|obj1...) output error e events (only popular events)
s .atob(str) decode base64 string to text MOUSE EVENTS
.focus() request send window to front window = global interaction func. e e
.onClick .onDblClick
.blur() remove focus from window METHODS
e .onMouseDown e .onMouseUp
USER INTERACTION METHODS
o .getSelection(id) return Selection object e .onMouseEnter e .onMouseLeave
.postMessage(msg, dst, transf) send .alert(str) show message (ok button) e .onMouseMove e .onMouseOver
o .open(url, name, options) open popup s .prompt(str, def) ask answer to user e e
.onMouseOut .onWheel
.stop() stop window loading b .confirm(str) show message (ok, cancel) KEYBOARD EVENTS
b .find(str, case, back, wrap, word, fr, d) e .onKeyDown e .onKeyUp
.print() open print document window history = page history on tab e .onKeyPress
PROPERTIES
ANIMATION METHODS LOAD/OBJECT EVENTS
n .requestAnimationFrame(cb(n)) n .length number of pages in historytab
e .onDOMContentLoaded e .onLoad
n .state return state top history stack
.cancelAnimationFrame(reqID) e .onAbort e .onError
METHODS
TIMER METHODS e .onResize e .onScroll
n .setTimeout(f(a...), ms, a...) delay&run .back() go prev page (same as .go(-1)) e .onBeforeUnload e .onUnload
.clearTimeout(id) remove timeout .forward() go next page (same as .go(1)) FORM/FIELDS EVENTS

n .setInterval(f(a...), ms, a...) run every


.go(n) go n page (positive or negative) e .onBlur e .onFocus
.pushState(obj, title, url) insert state e .onChange e .onInput
.clearInterval(id) remove interval .replaceState(obj, title, url) repl. state e .onInvalid e .onSelect
SCREEN METHODS
e .onReset e .onSubmit
.scrollBy(x, y) scroll x,y pixels (relative) storage localStorage / sessionStorage ANIMATION/TRANSITION EVENTS
.scrollTo(x, y) scroll x,y pixels (absolute) PROPERTIES e .onDragEnter e .onDragLeave
.moveBy(x, y) move window by x,y (rel) n .length number of items in storage e .onDragStart e .onDragEnd
.moveTo(x, y) move window to x,y (abs) METHODS e .onDragOver e .onDrag e .onDrop
.resizeBy(x, y) resize win by x,y (rel) s .key(n) return key name on position n ANIMATION/TRANSITION EVENTS
.resizeTo(w, h) resize win to WxX (abs) s .getItem(key) return value of item key e .onAnimationStart e .onAnimationEnd
STYLESHEET METHODS
.setItem(key, value) set or update key e .onAnimationIteration e .transitionEnd
o .getComputedStyle(elem, pseudelem) .removeItem(key) delete item with key
a .matchMedia(mediaq) match CSSMQ .clear() delete all items for current site
CHEAT SHEET

JAVASCRIPT WEB PROGRAMMING


Created by @Manz ( http://twitter.com/Manz ) http://www.emezeta.com/

document = Document object e Element() = Element object a Attr() = Attribute object


PROPERTIES PROPERTIES PROPERTIES

s .characterSet document charset s .accessKey if exist, shortcut key s .name name of element attribute
s .compatMode quirks or standard mode o .attributes array of Attr objects s .value value of element attribute
s .cookie return all cookies doc string o .classList DOMTokenList of classes
s .designMode return design mode status s .className classes list to string t DOMTokenList() = List of classes
s .dir return direction text: "rtl" or "ltr" s .id id string of element PROPERTIES

s .doctype return document type (DTD) s .name name string of element n .length number of items
s .domain return document domain s .tagName HTML tag of element METHODS
s .documentURI return document URL POSITION, SIZE AND SCROLL PROPERTIES b .contains(item) check if item exists
s .lastModified return date/time modific. n .clientTop top border width element .add(item) add item to list
s .origin return document's origin n .clientLeft left border width element s .item(n) return item number n
s .readyState return current load status n .clientWidth inner width element .remove(item) del item from list
s .referrer return previous page (referrer) n .clientHeight inner height element b .toggle(item) del item if exist, add else
s .title return document title n .scrollTop top-position in document
s .URL return HTML document URL n .scrollLeft left-position in document n Node() = Minor element (elem. or text)
o .location information about URL n .scrollWidth width of element PROPERTIES
ELEMENTS PROPERTIES n .scrollHeight height of element s .baseURI absolute base URL of node
o .activeElement focused element GET/SET HTML CODE PROPERTIES s .namespaceURI namespace of node
o .body return body element s .innerHTML get/set HTML inside elem s .nodeName name of node
o .currentScript return active script s .outerHTML get/set HTML (incl. elem) s .nodeType 1=element, 2=text, 9=doc
o .defaultView return window element METHODS
s .nodeValue value of node
o .documentElement first element (root) s .prefix namespace prefix of node
o .head return head element
o .closest(selec) closest ancestor s
a .textContent text of node and children
o .scrollingElement first scrollable elem. .getElementsByClassName(class)
NAVIGATION PROPERTIES
a .getElementsByTagName(tag)
DOCUMENT ARRAY PROPERTIES
o .querySelector(selec) return first elem o .childNodes children nodes collection
a .anchors array of images elements a .querySelectorAll(selec) return elems o .firstChild first children (include text)
a .applets array of applets elements b .matches(selec) match with this elem? o .lastChild last children (include text)
a .embeds array of embeds elements .insertAdjacentHTML(posstr, html) o .nextSibling immediate next node
a .forms array of forms elements ATTRIBUTE METHODS
o .previousSibling immediate prev node
a .images array of images elements o .parentElement immediate parent elem
b .hasAttributes() exists attributes?
a .links array of links elements o .parentNode immediate parent node
b .hasAttribute(name) exist attribute?
a .plugins array of plugins elements o .ownerDocument return document
s .getAttribute(name) return value
a .scripts array of scripts elements METHODS
STYLESHEET PROPERTIES
.removeAttribute(name) del attribute
.setAttribute(name, value) set attrib. o .appendChild(node) add node to end
a .styleSheets array of style files elem o .cloneNode(child) duplicate node
CLIENTRECT (POSITION AND SIZES) METHODS
o .preferredStyleSheetSet preferred css o .compareDocumentPosition(node)
o .selectedStyleSheetSet selected css o .getBoundingClientRect() return pos.
b .contains(node) node is descendant?
a .getClientRects() return pos/size array
METHODS b .hasChildNodes() node has childs?
o .adoptNode(node) adopt from ext doc o .insertBefore(newnode, node)
e Event() = Event on action
o .createAttribute(name) create Attr obj b .isDefaultNamespace(nsURI)
PROPERTIES
o .createDocumentFragment() b .isEqualNode(node) check if are equal
o .createElement(tag) create Element obj b .bubbles true=bubble, false=captures s .lookupNamespaceURI() ret namesp.
o .createEvent(type) create Event object b .cancelable event is cancelable? s .lookupPrefix() return prefix for a ns
o .createRange() create Range object o .currentTarget current element .normalize() normalize-form children
o .createTextNode(text) create TextNode b .defaultPrevented preventDefault() call o .removeChild(node) del node & return
o .enableStyleSheetsForSet(name) n .detail additional event info o .replaceChild(newnode, oldnode)
o .importNode(node, desc) import copy n .eventPhase current stage (0-3)
o .getElementById(id) find elem with id b .isTrusted user action or dispatched c ChildNode()
a .getElementsByName(name) w/ name o .target reference to dispatched object METHODS

o .getSelection(id) return Selection object n .timeStamp time when was created o .remove() remove specified node
s .type type of event
r ClientRect() = Coords of element METHODS
p ParentNode()
PROPERTIES
PROPERTIES
.preventDefault() cancel event
n .top top coord of surrounding rect .stopImmediatePropagation() n .childElementCount number of children
n .right right coord of surrounding rect .stopPropagation() prevent being called o .children children elements
n .bottom bottom coord of surrounding r. o .firstElementChild first children elem.
n .left left coord of surrounding rect o .lastElementChild last children elem.
t EventTarget (use over elements)
n .width width coord of surrounding rect
METHODS n NonDocumentTypeChildNode()
n .height height coord of surrounding r.
.addEventListener(ev, cb(ev), capt) PROPERTIES

.removeEventListener(ev, cb(ev), capt) o .nextElementSibling next element


b .dispatchEvent(ev) o .previousElementSibling prev element

You might also like