JavaScript
Contents
|
JavaScript is a structural (or potentially, partial object-oriented) programming language designed to work with (i.e. supported by) most modern web browsers. While not particularly Java-like in terms of language syntax, variable definition/initialization/scoping or function calls, it does borrow some object-oriented philosophies and certainly the philosophy of "write-once, run anywhere" from Java, hence borrowing the name. It was originally created to enable more interactive features to be added to static and/or dynamically served web pages withhin Websites or Web Applications. Because of its usefulness and simplicity in developing/running/testing small interactivity features, the Web saw a rise in popularity of the WebApp, with AJAX eventually leading the Web 2.0 movement.
It has also been called the world's most misunderstood programming language.[1][2]
Specifications
- JavaScript specification: https://tc39.github.io[3]
- See ECMA family of specs
- ECMA Script 262: http://www.ecma-international.org/publications/standards/Ecma-262.htm[4]
- JavaScript 1.8.5: https://developer.mozilla.org/en/JavaScript/New_in_JavaScript/1.8.5 (JavaScript spec is based on the ECMA Script spec)
- JavaScript 1.5: http://www-archive.mozilla.org/js/js15.html
- JavaScript 1.3: http://devedge-temp.mozilla.org/library/manuals/2000/javascript/1.3/guide/index.html
- W3C - Subresource Integrity (SRI): https://www.w3.org/TR/SRI/ (acheiving code-signing through use of "integrity" attribute on <script> tags)
Language
- JavaScript Style Guide: http://standardjs.com/
- Reserved words (operators/functions/declarations syntax): https://developer.mozilla.org/en/JavaScript/Reference/Reserved_Words
[7] [8] [9] [10] [11] [12] [13]
Graceful Degradation / Unobtrusive JS
Graceful Degradation (sometimes also called Unobtrusive Javascript[14]) is the maintenance of separation of concerns when programming client-side applications, and serves to divide up a client application into:
- Content = HTML/xHTML
- Style = CSS
- Behavior = JS (or VBscript)
The central idea behind taking the extra care required to write Unobtrusive Javascript, is that it allows you to be certain that your code will run as well as look and behave as similar as possible, on the widest array of devices, browsers and operating systems. The following is an Unobtrusive Javascript checklist:
- Begin with your content
- Give it structure with semantically descriptive markup
- Apply presentation layer changes using external CSS only (avoid all possible use of inline "style" attributes), and finally,
- Add a behavior layer with DOM scripting, rather than inline JavaScript or event handler attributes such as onclick, onkeypress, onmouseover, etc.
- Unobtrusive Javascript: http://www.onlinetools.org/articles/unobtrusivejavascript/
- Defer loading JavaScript: https://varvy.com/pagespeed/defer-loading-javascript.html
Progressive Enhancement
Along the same line of thought as Unobtrusive JavaScript is the idea of "Progressive Enhancement", also referred to as the Fallback technique (as a conscious attempt is made to provide as many fallbacks and alternative rendering, display or support methods as possible). Progressive Enhancement builds on the same foundations as Unobtrusive Javascript but adds the following two requirements:
- All navigation must happen via links and form submissions – don’t use JavaScript for navigation.
- If necessary, add JavaScript enhancements to navigation, overriding the links and form submissions, for example to avoid page reloads. Every single link and form element should still work when JavaScript is disabled.
- Understanding Progressive Enhancement: http://www.alistapart.com/articles/understandingprogressiveenhancement
- Progressive Enhancement with CSS: http://www.alistapart.com/articles/progressiveenhancementwithcss
- Progressive Enhancement 101 - Overview and Best Practices: http://sixrevisions.com/web-development/progressive-enhancement/
Polyfill
- wikipedia: Polyfill (programming)
- What is a Polyfill?: https://remysharp.com/2010/10/08/what-is-a-polyfill
- List of HTML5 Cross Browser Polyfills: https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills
- Loading Polyfills Only When Needed: https://philipwalton.com/articles/loading-polyfills-only-when-needed/
[24] [25] [26] [27] [28] [29] [30] [31]
Responsive Design
See: Responsive Design
Functions
- MozDev -- JavaScript - Functions: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions
Generators
- How JavaScript's "Generator Functions" work: https://dzone.com/articles/how-javascript-generator-functions-work
Defer & Async
- Efficiently load JavaScript with defer and async: https://flaviocopes.com/javascript-async-defer/
Fetch
- A practical ES6 guide on how to perform HTTP requests using the Fetch API: https://medium.com/free-code-camp/a-practical-es6-guide-on-how-to-perform-http-requests-using-the-fetch-api-594c3d91a547
window
- window.location: https://developer.mozilla.org/en/DOM/window.location
- window.onload: https://developer.mozilla.org/en/DOM/window.onload
document
- document Object overview: http://www.w3schools.com/jsref/dom_obj_document.asp
Events
- MozDev -- DOM Event reference: https://developer.mozilla.org/en/DOM/DOM_event_reference
- W3schools -- JS event listener examples: https://www.w3schools.com/js/js_events_examples.asp
- Event Delegation: https://javascript.info/event-delegation
- Bubbling & capturing (of events): https://javascript.info/bubbling-and-capturing
[35] [36] [37] [38] [39] [40] [41] [42]
Loops
- MozDev -- loops & iteration: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Loops_and_iteration
- JavaScript -- Loops (looping through SELECT OPTIONs): http://www.webcheatsheet.com/javascript/loops.php
for
- MozDev -- for loop: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for
forEach
- MozDev -- Array.prototype.forEach() loop: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/forEach
for ... in
- MozDev -- for...in loop: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for...in
Arrays
- JS Array Object: http://www.javascriptkit.com/jsref/arrays.shtml
- Mastering Javascript Arrays: http://www.hunlock.com/blogs/Mastering_Javascript_Arrays
- How to do Everything with Javascript Arrays: https://fjolt.com/article/javascript-everything-arrays
Associative Arrays
Associative Arrays in JavaScript are not proper in the sense that the entire list of associative key/value pairs may include other non-data components such as array operations (i.e. put, pop, trim, remove, etc...) as unexpected values when looping through the entire "Associative Array"
- JavaScript Associative Arrays: http://www.pageresource.com/jscript/jarray2.htm
- Objects as associative arrays: http://www.quirksmode.org/js/associative.html
- JavaScript Associative Arrays Demystified: http://blog.xkoder.com/2008/07/10/javascript-associative-arrays-demystified/
- How to Harness the Power of Associative Arrays: http://www.mactech.com/articles/mactech/Vol.16/16.10/AssociativeArrays/index.html
Multi-Dimensional Arrays
- JavaScript -- Arrays: http://www.webcheatsheet.com/javascript/arrays.php
Maps & Sets
- JavaScript Maps & Sets Explained: https://www.freecodecamp.org/news/javascript-maps-and-sets-explained/
- Javascript map and how it's different from foreach: https://dzone.com/articles/javascript-map-and-how-it-is-different-from-foreac
Object
- Let’s explore objects in JavaScript: https://medium.com/@cristiansalcescu/lets-explore-objects-in-javascript-4a4ad76af798
[52] [53] [54] [55] [56] [57] [58]
Prototype
EXAMPLE #1 - Prototypal Functions:
Function.prototype.method = function(name, func) { this.prototype[name] = func; return this; }
EXAMPLE #2 - Differential Inheritance (object literal, instance, extension):
var myMammal = { name : 'Mammal', get_name : function() { return this.name; }, says : function() { return this.saying || ; } };
var myDog = Object.create(myMammal); myDog.name = 'Poochie'; myDog.saying = 'Woof'; myDog.bark = function(n) { var i, s = ; for (i = 0; i < n; i++) { if (s) { s += '-'; } s += 'r'; } return s; }; myDog.get_name = function() { return this.says() + ' ' + this.name + ' ' + this.says(); };
- Understanding “Prototypes” in JavaScript: http://yehudakatz.com/2011/08/12/understanding-prototypes-in-javascript/
- Common Misconceptions About Inheritance in JavaScript: https://medium.com/javascript-scene/common-misconceptions-about-inheritance-in-javascript-d5d9bab29b0a
- A Guide To Prototype-Based Class Inheritance In JavaScript: https://medium.com/@js_tut/a-guide-to-prototype-based-class-inheritance-in-javascript-849d3c3ddca
Class
- MozDev -- JavaScript classes: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes (ES5+)
- JavaScript state encapsulation without classes in 2019 (with private fields!): https://hackernoon.com/javascript-state-encapsulation-without-classes-in-2019-97e06c6a9643
Options parameters / Destructuring
- Destructuring assignment: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment#object_destructuring
- Stop Using Function Parameters Now Use object destructuring instead: https://blog.bitsrc.io/stop-using-function-parameters-now-d320cf0932df
- What are JavaScript options objects?: https://www.codereadability.com/what-are-javascript-options-objects/ (common technique for passing a series of parameters)
Closures
- MozDev -- JavaScript - Closures: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Closures
- Closures Are Not Magic (useful examples to quickly understand): https://web.archive.org/web/20120101221030/http://blog.morrisjohns.com/javascript_closures_for_dummies.html (nested functions/properties and their scoping)
- Function within a function in JavaScript: https://www.hungred.com/how-to/tutorial-function-function-javascript/
[66] [67] [68] [69] [70] [71] [72] [73]
Currying
- Currying in JavaScript: https://codeburst.io/currying-in-javascript-ba51eb9778dc
- A Beginner’s Guide to Currying in Functional JavaScript: https://www.sitepoint.com/currying-in-functional-javascript/
Composition
- Curry and Function Composition: https://medium.com/javascript-scene/curry-and-function-composition-2c208d774983
IIFE
JavaScript Immediately-Invoked Function Expressions (IIFE).
- MozDev -- IIFE: https://developer.mozilla.org/en-US/docs/Glossary/IIFE
- JS IIFE explained: https://flaviocopes.com/javascript-iife/
[78] [79] [80] [81] [82] [83] [84]
Cookies
Cookies are small client-side data caches to store small amounts of data (such as session ID numbers, timestamps and other non-personal unique identifiers).
- How to Use Cookies in JavaScript: http://www.thesitewizard.com/javascripts/cookies.shtml
- Setting A Simple Cookie: http://codepunk.hardwar.org.uk/ajs26.htm
[85] [86] [87] [88] [89] [90] [91] [92]
DOM Query Selectors
New JavaScript native functions (inspired by jQuery) have been introduced in JavaScript 2 which can locate HTML elements in a more robust manner than the limited and traditional manners of getElementById() and name-based lookups, for example:
<form name="test"><input name="myfield" /></form> <script>var myfieldVal = document.test.myfield.value;</script>
In terms of browser support... querySelector(), querySelectorAll() and getElementsByClassName() are supported in Firefox 3.1+, IE8+ (only in IE8 standards mode), and Safari 3.1+
- Selectors API Level 1: http://www.w3.org/TR/selectors-api/
- W3C CSS Selectors API tutorial: http://www.javascriptkit.com/dhtmltutors/css_selectors_api.shtml
[93] [94] [95] [96] [97] [98] [99] [100] [101] [102]
getElementById
Looks up a single DOM Element based on the "id" attribute.
getElementsByName
Looks up single DOM Element(s) based on the "name" attribute.
getElementsByTagName
Looks up 1-to-n DOM Element(s) based on the "element (tag)" name.
getElementsByClassName
Looks up 1-to-n DOM Element(s) based on the "class" attribute.
querySelector
Looks up single DOM Element(s) based on the "selector" value (such as "#something" for an ID, ".something" for a CSS Class, or, "table tr td" for specific elements and many more selectors).
querySelectorAll
Looks up 1-to-n DOM Element(s) based on the "selector" value per querySelector.
getAttribute
- MozDev -- Element.hasAttribute(): https://developer.mozilla.org/en-US/docs/Web/API/Element/hasAttribute
- MozDev -- Element.getAttribute(): https://developer.mozilla.org/en-US/docs/Web/API/Element/getAttribute
DOM Traversal
- jQuery Selectors (can be used to walk DOM): http://docs.jquery.com/Selectors/id#id
- XHTML DOM Elements, their parent, children, attributes and default browser presentation : http://www.evotech.net/blog/2008/11/xhtml-elements/
- Script Smarter -- Quality JavaScript from Scratch: http://www.sitepoint.com/article/javascript-from-scratch/4/
AJAX (XHR)
Xml Http Request (XHR) is a native JavaScript object which has several different implementations and behaviors across browsers (particularly older versions of IE). It is a method for remotely requesting (calling) content in the form of(but not limited to) XML. It can also be used to get data in HTML, JSON, RDF, n3, CSV, TSV, and many other File Formats. Both GET and POST methods are supported, while PUT and DELETE have only partial support which varies even more greatly across platforms.
var url = 'http://sandbox.api.shopping.com/publisher/3.0/rest/GeneralSearch?apiKey=authorized-key&trackingId=7000610&keyword=nikon'; if (window.XMLHttpRequest) { xhttp=new XMLHttpRequest(); } else { xhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xhttp.open("GET",url,false); xhttp.send(); return xhttp.responseXML;
For more, see AJAX section.
Parsing XML
To retrieve a sub-list of multiple (identically named) elements:
<html> <head> <script type="text/javascript" src="loadxmldoc.js"></script> </head> <body> <div id="books"> </div> <script type="text/javascript"> xmlDoc=loadXMLDoc("books.xml"); books=xmlDoc.getElementsByTagName("book"); var booksDiv = document.getElementById("books"); booksDiv.innerHTML = "<ol>"; for (i = 0; i < books.length; i++) { title=xmlDoc.getElementsByTagName("title")[i].childNodes[0].nodeValue; booksDiv.innerHTML += "<li>" + title + " by: "; title=xmlDoc.getElementsByTagName("title")[i].childNodes[0].nodeValue; authors=books[i].getElementsByTagName("author"); for (j = 0; j < authors.length; j++) { author = authors[j].childNodes[0].nodeValue; if (authors.length == 1 || (authors.length-1) == j) booksDiv.innerHTML += author; else booksDiv.innerHTML += author + ", "; } } booksDiv.innerHTML += "</ol>"; </script> </body> </html>
- Paste the above code snippet into the "Try-it-now Editor": https://w3schools.sinsixx.com/dom/tryit.asp@filename=try_dom_loadxmlstring.htm
Likewise, for parsing an XML string in Javascript (no AJAX call):
<html> <head> <script type="text/javascript" src="loadxmlstring.js"></script> </head> <body> <div id="books"> </div> <script type="text/javascript"> xml = "<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>" + "<bookstore>" + "<book category=\"cooking\">" + "<title lang=\"en\">Everyday Italian</title>" + "<author>Giada De Laurentiis</author>" + "<year>2005</year>" + "<price>30.00</price>" + "</book>" + "<book category=\"children\">" + "<title lang=\"en\">Harry Potter</title>" + "<author>J K. Rowling</author>" + "<year>2005</year>" + "<price>29.99</price>" + "</book>" + "<book category=\"web\">" + "<title lang=\"en\">XQuery Kick Start</title>" + "<author>James McGovern</author>" + "<author>Per Bothner</author>" + "<author>Kurt Cagle</author>" + "<author>James Linn</author>" + "<author>Vaidyanathan Nagarajan</author>" + "<year>2003</year>" + "<price>49.99</price>" + "</book>" + "<book category=\"web\" cover=\"paperback\">" + "<title lang=\"en\">Learning XML</title>" + "<author>Erik T. Ray</author>" + "<year>2003</year>" + "<price>39.95</price>" + "</book>" + "</bookstore>"; xmlDoc=loadXMLString(xml); books=xmlDoc.getElementsByTagName("book"); var booksDiv = document.getElementById("books"); booksDiv.innerHTML = "<ol>"; for (i = 0; i < books.length; i++) { title=xmlDoc.getElementsByTagName("title")[i].childNodes[0].nodeValue; booksDiv.innerHTML += "<li>" + title + " by: "; authors=books[i].getElementsByTagName("author"); for (j = 0; j < authors.length; j++) { author = authors[j].childNodes[0].nodeValue; if (authors.length == 1 || (authors.length-1) == j) booksDiv.innerHTML += author; else booksDiv.innerHTML += author + ", "; } } booksDiv.innerHTML += "</ol>"; </script> </body> </html>
- JSfiddle - DEMO - see "AJAX XML Parsing example" here: http://jsfiddle.net/bcmoney/BCUHq/
Promises
- What is a Promise?: https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-promise-27fc71e77261
- Q - Promise polyfill lib: https://github.com/kriskowal/q | NPM
[115] [116] [117] [118] [119] [120] [121] [122]
- How can I access a variable outside a promise `.then` method?: https://stackoverflow.com/questions/47559836/how-can-i-access-a-variable-outside-a-promise-then-method
- Promise: https://javascript.info/promise-basics
[123] [124] [125] [126] [127] [128]
Closures
- JavaScript Closures 101- they're not magic: http://www.javascriptkit.com/javatutors/closures.shtml
- Closures - Emulating Private methods: https://developer.mozilla.org/en-US/docs/JavaScript/Guide/Closures#Emulating_private_methods_with_closures
Features
Features commonly implemented using JavaScript are listed here.
Show/Hide
Feature giving the ability to show/hide content in a webpage or application.
- BlendTrans Cross-Browser Image and Div Content Fades: https://web.archive.org/web/20090219174051/http://www.brainerror.net/scripts/javascript/blendtrans/
- Fade In/Out Opacity: http://www.justintubbs.com/code-samples/fadeIn-fadeOut-opacity.php
- Quick 'N Easy Div Show/Hide: http://www.willmaster.com/blog/css/show-hide-div-layer.php (using CSS/JS)
- Show / Hide Solution: http://host.sonspring.com/show-hide/[129]
[130] [131] [132] [133] [134] [135] [136]
- Must-Know URL Hash Techniques for AJAX Applications: http://blog.mgm-tp.com/2011/10/must-know-url-hashtechniques-for-ajax-applications/
Input Validation
Client-side input validation (prior to and perhaps after sending data to the server).
- Validating a Date: http://lawrence.ecorp.net/inet/samples/regexp-validate.php#date
User-Agent Detection
One of the most useful features of JavaScript is ironically, one of its largest setbacks. Since JavaScript behaves slightly differently across different implementations (i.e. by browser types and OSs), a number of library components were included for detecting the Client/User-Agent of the application and platform through which a given piece of JavaScript was accessed.
- JS Feature Support Detection: http://www.yourhtmlsource.com/javascript/supportdetection.html
- Browser detect: http://www.quirksmode.org/js/detect.html
- Object detection: http://www.quirksmode.org/js/support.html
Libraries
- List of all well-known/used JavaScript libraries: http://www.javascriptoo.com/
- wikipedia: List of JavaScript libraries
Node.JS
Node.JS is much more than just a simple Javascript front-end library or set of convenience utilities, it is a full fledged platform for running JavaScript on the server-side (i.e. within a command-line prompt or via backend code that never interacts with an end user). Node.JS is powered by the V8 JavaScript engine, and offers a number of additional utilities (or JS libraries) of its own via Node.JS plugins and extensions. An emerging all-Javascript software architecture for doing all stages of programming from even Database Server storage to the Application Server, and the Front-End view interaction code to the Back-End MVC model and controller code, is called MEAN (which stands for MongoDB, Express.JS, Angular.JS, Node.JS).
- Node.JS -- server-side JavaScript: http://nodejs.org/ | DOCS[144][145][146][147][148][149]
- Ryan Dahl -- Original Node.js presentation: https://www.youtube.com/watch?v=ztspvPYybIY[150][151][152][153]
- The definitive NodeJS handbook: https://medium.com/free-code-camp/the-definitive-node-js-handbook-6912378afc6e
- Nodemon: https://nodemon.io (utility that monitors for changes in source code, automatically restarting server)
- Glitch: https://glitch.com/ (NodeJS apps "in the cloud")
[159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176] [177] [178] [179] [180] [181] [182] [183] [184] [185] [186] [187] [188] [189] [190] [191] [192] [193]
- Five use cases where a npm private proxy fits in your workflow: https://medium.com/@jotadeveloper/five-use-cases-where-a-npm-private-proxy-fits-in-your-workflow-632a81779c14
- How to publish your package on npm: https://hackernoon.com/how-to-publish-your-package-on-npm-7fc1f5aae600
- Publishing private NPM packages to Nexus: https://levelup.gitconnected.com/deploying-private-npm-packages-to-nexus-a16722cc8166
- How we make npm packages work in the browser: https://hackernoon.com/how-we-make-npm-packages-work-in-the-browser-announcing-the-new-packager-6ce16aa4cee6
- GitHub -- NPM PackageRegistry: https://github.com/features/package-registry
- Jest: https://jestjs.io/
[194] [195] [196] [197] [198] [199] [200] [201]
Deno
- Deno - A modern runtime for JavaScript and TypeScript: https://deno.land/ (NodeJS creator's completely re-imagined "JS on the server" platform alternative to NodeJS)
NPM
Node Package Manager (NPM).
- Node Package Manager (NPM) - official NodeJS repos: https://www.npmjs.com/ | EXAMPLE - Selenium
- Yarn: https://yarnpkg.com/ | DOCS | SRC | DOWNLOAD
- NPM secure search: https://npms.io/ (adds security scans to NPM module search)[206]
[207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221] [222] [223] [224] [225] [226] [227] [228] [229] [230] [231] [232] [233] [234]
Mocha/Chai
- HarpJS: http://harpjs.com/[235]
- MochaJS: https://mochajs.org/ | DOWNLOAD
- ChaiJS: http://chaijs.com/ | DOWNLOAD (BDD/TDD assertion framework for Node.JS)
[236] [237] [238] [239] [240] [241] [242] [243] [244] [245] [246] [247] [248] [249] [250] [251]
Express.JS
Express is a plugin for efficient and fast HTTP handling (requests/responses) and provides a true web application framework for Node.JS applications.
- Express.JS: http://expressjs.com/ (Fast, unopinionated, minimalist web framework for Node.js)
jQuery
jQuery has long been the leading (most-used) JavaScript library. It provides a number of features primary of which is cross-browser backwards-compatibility, DOM selectors, CSS selectors, dynamic interactivity (event delegation) and a simple plugin/extension framework.
- jQuery: http://jquery.com/ (fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions)
- ResponseJS: http://responsejs.com/ (jQuery-based responsive framework)
jQuery Mobile
- jQuery Mobile: http://jquerymobile.com/
Sencha
- Sencha: http://www.sencha.com/ (formerly ExtJS)
- ExtJS public repository: http://code.google.com/p/extjs-public/
Sencha Touch
- Sencha Touch: http://www.sencha.com/products/touch/ (top competitor to jQuery Mobile, more restrictive/commercial license)
Raphael
- Raphael.js (SVG implementation): http://raphaeljs.com/
Oracle JET
- Oracle -- JavaScript Extension Toolkit (JET): https://www.oracle.com/webfolder/technetwork/jet/index.html | DEMO (includes a nice non-WebComponent Component showcase example)
YUI
- Yahoo User Interface library: http://developer.yahoo.com/yui/ (user-interface focused library from Yahoo)
DOJO
- DOJO Toolkit: http://dojotoolkit.org/ (first framework to focus on extensibility and widgets)
Prototype
- Prototype.JS: http://www.prototypejs.org/ (one of the first popular JS frameworks)
MooTools
- MooTools: http://mootools.net/ (based on Prototype; focuses on DOM manipulations)
Scriptaculous
- Scriptaculous: http://script.aculo.us/ (extension of Prototype.JS; one of the first which focused on impressive animations all using DOM manipulation)
Templating
- CoffeeScript: http://jashkenas.github.com/coffee-script/
- Mustache: http://mustache.github.com/
- Handlebars: http://handlebarsjs.com/
- Dust.js: http://akdubya.github.com/dustjs/
- JsRender: http://borismoore.github.com/jsrender/demos/ (Next-generation of now-defunct jQuery Templates plugin)
- UnderscoreJS: http://documentcloud.github.com/underscore/[253]
- Lodash: https://lodash.com/ | DOCS (additional functionality built atop UnderscoreJS)[254][255][256][257][258][259][260]
- Baba.JS: https://github.com/mrharel/babajs
- Embedded JS: http://embeddedjs.com/
- I Can Haz JS: http://icanhazjs.com/
- JCC: http://jcclib.appspot.com/
Angular.JS
Of Particular note in the category of "Templating/Eventing" JavaScript libraries is the Angular.JS library. It is described by its founders as "what HTML would have been, had it been designed for building web-apps" and provides Declarative templates with data-binding, MVW, MVVM, MVC, etc. According to its own site: "HTML is great for declaring static documents, but it falters when we try to use it for declaring dynamic views in web-applications. AngularJS lets you extend HTML vocabulary for your application. The resulting environment is extraordinarily expressive, readable, and quick to develop. Other frameworks deal with HTML’s shortcomings by either abstracting away HTML, CSS, and/or JavaScript or by providing an imperative way for manipulating the DOM. Neither of these address the root problem that HTML was not designed for dynamic views."
In summary, angular lets you create your own HTML tags and put "data placeholders" right into the HTML layout, which then get dynamically populated and updated by the Angular.JS framework, based on particular events that happen within the page (or outside of it, i.e. via data pushed from the backend).
- Angular.JS: http://angularjs.org/
[263] [264] [265] [266][267][268][269][270] [271] [272] [273]
Ionic
Ionic Framework is a library for hybrid mobile application development in Angular, React, Vue and/or "vanilla" JavaScript.
- Ionic - Mobile HTML5 Layout/JS Framework: http://ionicframework.com/ | DEMO - UI Components
- Ionic - Quickstart/welcome guide: https://dashboard.ionicframework.com/welcome | Personal APPS
- Ionic - Identity Vault: https://ionicframework.com/enterprise/identity-vault[274]
- Ionic - Portals: https://ionic.io/portals[275]
[276] [277] [278] [279] [280] [281] [282] [283] [284] [285] [286] [287] [288] [289] [290] [291] [292] [293] [294] [295] [296] [297] [298] [299] [300] [301]
Backbone.JS
A close runner-up to Angular.JS in terms of popularity, Backbone.JS follows a similar concept of templating/eventing and "data placeholders", but has some differences in features and implementation.
- Backbone.JS: http://backbonejs.org/ | DOCS
Isomorphic
- Luna: http://asana.com/luna
- Meteor: http://www.meteor.com/
- Batman.JS: http://batmanjs.org/ (competitor to Ember.JS)
- Ember.JS: http://emberjs.com/ (Node.JS CLI available)
- Require.JS: http://requirejs.org/ (module/JS/CSS file-loader) | SAMPLES (samples that illustrate the purpose of Require.js)
- DukeScript: http://dukescript.com/ (puts the "JAVA" back into JavaScript)
- TodoMVC: https://todomvc.com (helping you select an MV* framework)
Knockout.JS
- KnockoutJS: http://knockoutjs.com/ | SAMPLES | EXAMPLES | DEMO (best principles for Knockout applications)
[303] [304] [305] [306] [307] [308] [309] [310] [311] [312] [313] [314] [315] [316] [317] [318] [319] [320] [321] [322] [323] [324] [325] [326]
Vue.JS
- Vue.JS: https://vuejs.org/ | SRC | DOCS | EXAMPLES[327]
- NuxtJS: https://nuxtjs.org/ (modular framework on top of VueJS, as "NextJS" is to React)
- Vue.JS - interactive cheat sheet: https://marozed.ma/vue-cheatsheet/
[328] [329] [330] [331] [332] [333] [334] [335] [336] [337] [338] [339] [340] [341] [342] [343] [344] [345] [346] [347] [348] [349] [350] [351] [352] [353] [354] [355] [356] [357] [358] [359] [360] [361] [362] [363] [364] [365] [366] [367] [368] [369] [370] [371] [372] [373] [374] [375] [376] [377] [378] [379] [380] [381] [382] [383] [384] [385] [386] [387] [388] [389] [390] [391] [392] [393] [394] [395]
React.JS
- React.JS: http://facebook.github.io/react/ | SHOWCASE (by Facebook)[396][397]
- ReactJS -- create-react-app: https://facebook.github.io/create-react-app/ | SRC
- Google Chrome store -- React Developer Tools: https://chrome.google.com/webstore/detail/react-developer-tools/fmkadmapgofadopljbjfkapdkoienihi[398]
- ReactJS Testing Library: https://testing-library.com/react | SRC[399]
- REDUX: http://redux.js.org/ | REACT-REDUX (using command: npm install --save react-redux using React.js 0.14+)[400][401][402]
- Preact.JS: https://preactjs.com/ | CLI tool (an OSS, 3kb barebones alternative to React.js that implements same JS APIs)[403]
- NextJS: https://nextjs.org (React framework for Production with Typescript support and additional optimizations)
- BlitzJS: https://blitzjs.com/ (fullstack React framework, inspired by Ruby on Rails, is built on Next.js & features a "Zero-API" data layer abstraction that eliminates the need for REST/GraphQL)
- React Bootstrap: https://react-bootstrap.github.io/
[404] [405] [406] [407] [408] [409] [410] [411] [412] [413] [414] [415] [416] [417] [418] [419] [420] [421] [422] [423] [424] [425] [426] [427] [428] [429] [430] [431] [432] [433] [434] [435] [436] [437] [438] [439] [440] [441] [442] [443] [444] [445] [446] [447] [448] [449] [450] [451] [452] [453] [454] [455] [456] [457] [458] [459] [460] [461] [462] [463] [464] [465] [466] [467] [468] [469] [470] [471] [472] [473] [474] [475] [476] [477] [478]
- (Frontend) Component Testing in React -- what and how to test with Jest and Enzyme: https://medium.com/swlh/components-testing-in-react-what-and-how-to-test-with-jest-and-enzyme-7c1cace99de5
- ReactJS + Babel + WebPack template: https://repl.it/@templates/Reactjs-Babel-Webpack-Boilerplate
- Navigation in a React Native Web Application: https://dzone.com/articles/how-to-do-navigation-in-react-native-web-in-2020
- React Hooks by Example -- Convert a Tesla Battery Range Calculator to Functional Components: https://dzone.com/articles/steps-to-convert-the-react-tesla-battery-range-calc-to-func-comp-with-hooks
SWR
- Stale-While-Revalidate (SWR) -- React Hooks library for remote data fetching: https://swr.vercel.app | SRC
ReactNative
- ReactNative: https://facebook.github.io/react-native/ | SRC | LIBS
- React Native blog (official): https://facebook.github.io/react-native/blog/
- React Native for Windows: https://github.com/microsoft/react-native-windows[486]
- Expo -- Examples & Tutorials: | DOCS | EXAMPLES[487]
- NativeBase: https://www.nativebase.io/ | DOCS | THEME CUSTOMIZER[488]
[489] [490] [491] [492] [493] [494] [495] [496] [497] [498] [499] [500] [501] [502] [503] [504] [505] [506] [507] [508]
[509] [510] [511] [512] [513] [514] [515] [516] [517] [518] [519] [520] [521] [522] [523] [524] [525] [526] [527] [528] [529] [530]
[531] [532] [533] [534] [535] [536] [537] [538]
[539] [540] [541] [542] [543] [544] [545]
Svelte
Svelte's selling points over other emerging JS frameworks are:
- Write less code - Build boilerplate-free components using languages you already know — HTML, CSS and JavaScript
- No virtual DOM - Svelte compiles your code to tiny, framework-less vanilla JS — your app starts fast and stays fast
- Truly reactive - No more complex state management libraries — Svelte brings reactivity to JavaScript itself
- wikipedia: Svelte
- Svelte: https://svelte.dev
- Svelte -- REPL tool: https://svelte.dev/repl/hello-world?version=3.31.2
Desktop
Electron
- Electron: https://www.electronjs.org/
Other
- PHP.JS -- Use PHP functions in JavaScript: http://phpjs.org/ (PHP.JS is an open source project to port as many PHP functions as possible to JavaScript)
- Echo3: http://echo.nextapp.com/site/
- MicroJS -- Modularized JS library: http://microjs.com/ (use only what you need)
- SWFObject: http://blog.deconcept.com/swfobject/ (cross-browser/platform Flash embed generation)[549]
- Humane.js - Unobtrusive JS notifications lib: http://wavded.github.com/humane-js/
- Uize: http://www.uize.com/
- Sammy: http://code.quirkey.com/sammy/
- XUI: http://xuijs.com/ (JS micro framework, now mobile-focused)
- Sarissa: http://dev.abiss.gr/sarissa/ (ECMAScript library, cross-browser wrapper for native XML APIs... Document instantiation, XML loading from URLs or strings, XSLT transformations, XPath queries, etc)
- JS XPath: http://js-xpath.sourceforge.net/ (JavaScript XPath Implementation)
- Qooxdoo: http://qooxdoo.org/
- MochiKit: http://www.mochikit.com/
- wu.js: http://fitzgen.github.com/wu.js/ (lazy, functional Javascript library)
- Midori: http://midorijs.com/
- Helios: http://gna.org/projects/helios/
- Archetype: http://sourceforge.net/projects/archetypejs/ (retired 2009)
- CodePress: http://codepress.sourceforge.net/ (online real-time Syntax-Highlighting editor)
- AdSafe: http://www.adsafe.org/ (Douglas Crockford lib that makes JavaScript safe for remotely-loaded Advertisements)
- Foundation: http://foundation.zurb.com/ (responsive JS framework)
Tools
- JScript Core (compiler): http://msdn.microsoft.com/en-us/library/72bd815a%28v=VS.71%29.aspx[550]
- JavaScript Object Explorer: https://codepen.io/sdras/pen/rpwjzw
- JAVASCRIPT TOOLBOX -- 25+ Tools & Tutorials For JavaScript: http://mashable.com/2007/10/05/javascript-toolbox/
- Visual (JS) Events: http://www.sprymedia.co.uk/article/Visual+Event+2 (visualize previously hard to debug DOM events and actions)
- php-to-js -- Converts PHP to JavaScript: https://code.google.com/p/php-to-js/
- Libraries.io: https://libraries.io/ (tracks JavaScript modules & libs across separate build tools & front-end configuration management frameworks)
Transpiling
- Babel - JS Transpiler: https://babeljs.io (put in next-gen JS like ES-5, ES-6, etc... get browser-compliant JS)[551][552]
You might not need JavaScript: http://youmightnotneedjs.com/
Builds
- Vite: https://vitejs.dev[553]
- Parcel: https://parceljs.org/ | DOCS | SRC | DOWNLOAD
- Yeoman: https://yeoman.io/ | DOCS | SRC | DOWNLOAD (web app scaffolding tool)[554]
- WebPack: https://webpack.js.org/ | DOCS | SRC DOWNLOAD[555][556][557][558][559]
- Gulp JS - streaming build system: http://gulpjs.com/ | DOCS | SRC | DOWNLOAD[560]
- Browserify: http://browserify.org/ | DOCS | SRC | DOWNLOAD
- RequireJS: https://requirejs.org/ | DOCS | SRC | DOWNLOAD (cross-browser packaging of dependencies)
- Bower: https://bower.io/ | DOCS | SRC | DOWNLOAD (JS dependency tool themselves recommend moving to WebPack+Parcel for regular WebApps or Yarn for NodeJS-dependent WebApps)
- Grunt: https://gruntjs.com/ | DOCS | SRC | DOWNLOAD (JS task runner)
Optimization
- JSlint - Javascript validator: http://www.jslint.com/ (A lint[566] for JavaScript JSLint, a JavaScript syntax checker and validator.)[567]
- Javascript Maven 2: http://mojo.codehaus.org/javascript-maven-tools/
Minifying
- JSmin: http://www.crockford.com/javascript/jsmin.html
- JS compress: http://jscompress.com/
- Dean Edwards' JS packer: http://dean.edwards.name/packer/
- YUIcompress - online tool: http://refresh-sf.com/yui/
Obfuscation
- HTML Guardian: http://www.htmlguardian.org/[568][569]
- ObfuscateJS -- Javascript Obfuscator: http://tools.2vi.nl/[570]
- UglifyJS JavaScript minification: http://marijnhaverbeke.nl/uglifyjs
- JS-Obfus: http://www.stunnix.com/prod/jo/
- Class -- Javascript Obfuscator: http://www.phpclasses.org/browse/package/1863.html
- Example -- MxGraph: http://www.jgraph.com/mxgraph.html
Packing
- JS Packer: http://dean.edwards.name/packer/[571]
- How to prevent a page from being framed: http://www.cryer.co.uk/resources/javascript/script1.htm
- Protecting JS callbacks from code exploits (or JSONp Web Service): http://getahead.org/blog/joe/2007/04/04/how_to_protect_a_json_or_javascript_service.html
Unpacking
- Beautify, unpack or deobfuscate JavaScript and HTML: http://jsbeautifier.org
- Online Javascript Compression Tool: http://jscompress.com
Testing
- jsunit: http://jsunit.berlios.de/ (jUnit port) [572]
- fireunit.js: http://fireunit.org/
- jsmock: http://jsmock.sourceforge.net/
- JSCoverage - code coverage for JavaScript: http://siliconforks.com/jscoverage/
Code Documentation
- wikipedia: JSDoc | EXAMPLE - jQuery JSDoc (JavaScript version of JavaDocs)[573][574][575]
- JSDoc - JavaScript Documentation Tool: https://github.com/jsdoc3/jsdoc/[576]
- Use JSDoc guide: http://usejsdoc.org/ CALLBACKS[577]
Javascript Engine
- V8 JavaScript Engine (Google; C++): http://code.google.com/p/v8/
- Rhino (Mozilla; Java): http://www.mozilla.org/rhino/
- Project Nashorn: http://openjdk.java.net/projects/nashorn/ (deprecated as of Dec. 2018)[579][580][581]
Editors
- JEclipse plugin: http://www.interaktonline.com/Products/Eclipse/JSEclipse/Overview/
- NetBeans JavaScript Support: http://javascript.netbeans.org/ [582]
- JSFiddle -- code editor: http://jsfiddle.net/[583]
- CodePen: https://www.codepen.io
- Snipplr: http://www.snipplr.com
- JSbin -- open source collaborative JavaScript debugging tool: http://jsbin.com/ (similar to JS Fiddle but enables full control with less wrapper code from the service)
- Bespin project (Mozilla's cloud-based code editor): http://bespin.mozilla.com
- CollabEdit - live interactive and collaborative code editor: http://collabedit.com/
- TIDE: http://tide4javascript.com/
- JavaScript Editor: http://www.c-point.com/javascript_editor.php
- Raphael LIVE: http://craic.com/tutorials/javascript/raphael_live/raphael_live.html
- Amy Editor: http://www.amyeditor.com/
- SquadEdit: https://squadedit.com/ (now paying users only)
Resources
- Mozilla Developer Network (MDN) - JavaScript Guide: https://developer.mozilla.org/en/javascript/guide
- JS Essentials - The JavaScript Engine: https://codeburst.io/js-essentials-the-javascript-engine-302ff38e8465
- Modern JS - Reference: https://plainjs.com/javascript/ (like the "jQuery Docs" but for regular/plain-old/vanilla JS)
- JavaScript Reference: http://www.javascriptkit.com/jsref/
- JavaScript Language in one page: http://www.javascript.su/
- Reserved words in JavaScript: http://www.javascripter.net/faq/reserved.htm
- The complete JavaScript handbook: https://medium.com/free-code-camp/the-complete-javascript-handbook-f26b2c71719c
- JavaScript Bible (BOOK) - Appendix A - JS reference: http://www.dannyg.com/dl/JSB6RefBooklet.pdf
- Eloquent JavaScript (BOOK): https://eloquentjavascript.net/
- JavaScript Primers: https://www.htmlgoodies.com/primers/jsp/
- Learning JavaScript Design Patterns (BOOK): http://addyosmani.com/resources/essentialjsdesignpatterns/book/#writingdesignpatterns
- Prototypal Inheritance in JavaScript: http://javascript.crockford.com/prototypal.html (Crockford on OO-ish JS)[584]
- JavaScript Compiler: http://www.mozilla.org/rhino/jsc.html
- Compile JScript Code from the Command Line: http://msdn.microsoft.com/en-us/library/7435xtz6%28v=vs.80%29.aspx
- JavaScript shell scripting: http://www.phpied.com/javascript-shell-scripting/
- Make your javascript a Windows .exe: http://www.phpied.com/make-your-javascript-a-windows-exe/
- YUI Compressor: http://developer.yahoo.com/yui/compressor/[585][586]
- Activate JavaScript instructions: http://activatejavascript.org/en/instructions/ (useful to place link in NoScript for WebApps)
- JavaScript Essentials -- Types & Data Structures: https://codeburst.io/javascript-essentials-types-data-structures-3ac039f9877b
- JavaScript Best Practices -- Performance: https://levelup.gitconnected.com/javascript-best-practices-performance-a549bc87ed20[587]
- Reddit - Atwood’s Law sub-reddit: https://www.reddit.com/r/atwoodslaw/ (community keeping track of the most amazing/impressive things ported to or built in JavaScript)
- State of JS: https://stateofjs.com (annual industry survey)
- Using the navigator object to detect client's browser: http://www.javascriptkit.com/javatutors/navigator.shtml
- Convert XML Document to String in JavaScript: http://www.hiteshagrawal.com/javascript/convert-xml-document-to-string-in-javascript
- JavaScript XML Parser Properties: http://www.hiteshagrawal.com/javascript/javascript-xml-parser-properties
- unobtrusive dynamic select boxes: http://javascript.internet.com/forms/unobtrusive-dynamic-select-boxes.html
- JavaScript -- XMLWriter: http://demos.flesler.com/XMLWriter/
- XMLWriter for Javascript: http://flesler.blogspot.com/2008/03/xmlwriter-for-javascript.html
- JavaScript – Parsing XML in JavaScript: http://www.hiteshagrawal.com/javascript/javascript-parsing-xml-in-javascript
- Call SOAP based web services through JavaScript: http://ejvyas.blogspot.com/2009/04/call-soap-based-web-services-through.html
- Carousel.us - a Javascript 3D carousel: http://www.visual-blast.com/javascript/carouselus-a-javascript-3d-carousel/
- JavaScript Style Attributes: http://www.comptechdoc.org/independent/web/cgi/javamanual/javastyle.html
- How to Preload Images: http://www.mediacollege.com/internet/javascript/image/preload.html
- Looking Inside DOM Page Elements: http://www.elated.com/articles/looking-inside-dom-page-elements/
- Retrieving Page Elements via the DOM: http://www.elated.com/articles/javascript-retrieving-page-elements-via-the-dom/
- Right-click Context Menu in JS/CSS: http://www.openjs.com/scripts/ui/context_menu/
- JavaScript - Form Validation (Passwords): http://www.the-art-of-web.com/javascript/validate/1/
- Javascript trim: http://www.webtoolkit.info/javascript-trim.html
- JSLint decoded – A Guide To JSLint Messages: http://www.jameswiseman.com/blog/2011/01/17/jslint-a-guide-to-jslint-messages/[588]
- Getting Started with Node.js on Windows: http://codebetter.com/matthewpodwysocki/2010/09/08/getting-started-with-node-js-on-windows/
- FleXcroll (xHTML-compliant, cross-browser JavaScript/CSS scrollbars): www.hesido.com/web.php?page=customscrollbar
- Lazy Load: http://www.martinfowler.com/eaaCatalog/lazyLoad.html
- Javascript add events cross-browser function implementation: use attachEvent/addEventListener vs inline events: http://stackoverflow.com/questions/3763080/javascript-add-events-cross-browser-function-implementation-use-attachevent-add[589]
- The DOM tree: http://www.howtocreate.co.uk/tutorials/javascript/dombasics
- Adding elements to the DOM: http://www.javascriptkit.com/javatutors/dom2.shtml
- EventTarget.addEventListener: https://developer.mozilla.org/en/docs/Web/API/EventTarget.addEventListener#Compatibility
- Javascript Dates - The Complete Reference: http://www.hunlock.com/blogs/Javascript_Dates-The_Complete_Reference
- JavaScript Date: http://www.easywayserver.com/blog/?p=20
- Date/Epoch Converter: http://www.esqsoft.com/javascript_examples/date-to-epoch.htm
- Calculating the Number of Days Between Any Two Dates: http://www.mcfedries.com/javascript/daysbetween.asp
- Compare string with today's date in JavaScript: https://stackoverflow.com/questions/15063670/compare-string-with-todays-date-in-
- JavaScript for Displaying Date Document Last Modified: http://www.braemoor.co.uk/software/datemodified.shtml
- JavaScript sleep/wait before continuing: https://stackoverflow.com/questions/16873323/javascript-sleep-wait-before-continuing
- JavaScript (safe) sleep with setTimeout/setInternval: https://stackoverflow.com/questions/8624427/javascript-sleep-with-settimeout
- AirBnB - JavaScript style guide: https://github.com/airbnb/javascript/blob/master/README.md (good template to use when building your own corporate JS-style guide)
- JavaScript -- The Good Parts (E-BOOK): [590][591][592][593]
- You Don't Know JS (E-BOOK SERIES): https://github.com/getify/You-Dont-Know-JS | Up & Going | Scope & Closures | this & Object Prototypes | Types & Grammar | Async & Performance | ES6 & Beyond
- 20+ Web Projects With Vanilla JavaScript: https://github.com/bradtraversy/vanillawebprojects
Tutorials
- Content Syndication with Case-Hardened JavaScript: https://kentbrewster.com/case-hardened-javascript/
- From jQuery to JavaScript - A Reference: http://net.tutsplus.com/tutorials/javascript-ajax/from-jquery-to-javascript-a-reference/
[594] [595] [596] [597] [598] [599]
- Building the Classical Musician’s Answer to Guitar Hero in JavaScript (with a lot of help from jQuery): https://medium.com/@elliefarrerio/building-the-classical-musicians-answer-to-guitar-hero-in-javascript-with-a-lot-of-help-from-7e97ef0f1a1e
- How to disable HTML links: https://stackoverflow.com/questions/10276133/how-to-disable-html-links
- Debugging JavaScript: https://flaviocopes.com/debugging/
- Casting in JS: https://flaviocopes.com/javascript-casting/
- var, let and const - what's the difference?: https://dev.to/sarah_chima/var-let-and-const--whats-the-difference-69e
- JavaScript -- Web Services using XMLHttpRequest (Ajax): http://www.the-art-of-web.com/javascript/ajax/
- Post a form to a popup window with Javascript and jQuery: http://www.electrictoolbox.com/post-form-popup-window-javascript-jquery/
- JavaScript -- Popup Windows: http://www.blazonry.com/javascript/windows.php
- Mozilla dev docs -- Understanding client-side JavaScript frameworks - React, Ember & Vue: https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Client-side_JavaScript_frameworks
- Named function expressions demystified: http://kangax.github.io/nfe/[600][601]
- Traditional functions function functionName() {...} .VS. Named Variable functions var functionName = (function(){...});: https://stackoverflow.com/questions/336859/var-functionname-function-vs-function-functionname/338053#338053[602][603][604][605][606][607][608][609][610][611][612][613]
- Learning JavaScript Programming Language through Video Lectures: http://www.catonmat.net/blog/learning-javascript-programming-language-through-video-lectures/
- Learning JavaScript from PHP - a Comparison: http://www.lullabot.com/articles/learning-javascript-php-comparison
- Generating Files with JavaScript and PHP: http://tutorialzine.com/2011/05/generating-files-javascript-php/
- The art of throwing JavaScript errors: http://www.nczonline.net/blog/2009/03/03/the-art-of-throwing-javascript-errors/
- Superclassy Inheritance In Javascript: http://alexsexton.com/?p=49
- Multiple variable assignment with Javascript: https://www.electrictoolbox.com/javascript-multiple-variable-assignment/
- Better Ways of Comparing a JavaScript String to Multiple Values: https://www.tjvantoll.com/2013/03/14/better-ways-of-comparing-a-javascript-string-to-multiple-values/
- Sequences using JavaScript Array: http://architects.dzone.com/articles/sequences-using-javascript
- What is a Polyfill?: http://remysharp.com/2010/10/08/what-is-a-polyfill/
- Loading Polyfills Only When Needed: https://philipwalton.com/articles/loading-polyfills-only-when-needed/
- requestAnimationFrame for smart animating: http://paulirish.com/2011/requestanimationframe-for-smart-animating/
- Disabling the "Long-running Script" warning in IE: http://stackoverflow.com/questions/4460263/disabling-the-long-running-script-message-in-internet-explorer
- How do I prevent the "Slow Script" warning in IE and other browsers: http://stackoverflow.com/questions/6598285/how-do-i-prevent-the-slow-script-warning-and-force-the-browser-to-continue-runni/20405230#20405230
- Multi-threading in JavaScript: http://www.sitepoint.com/multi-threading-javascript/
- Javascript: substr() v.s. substring(): http://rapd.wordpress.com/2007/07/12/javascript-substr-vs-substring/
- Object Dump JavaScript: https://stackoverflow.com/questions/749266/object-dump-javascript
- Revisiting JavaScript Objects: http://css.dzone.com/articles/revisiting-javascript-objects
- Convert Array to Object: https://stackoverflow.com/questions/4215737/convert-array-to-object
- dataset vs .data - Difference?: https://stackoverflow.com/questions/23596751/dataset-vs-data-difference (dataset is used for accessing data-stuff type attributes, data is used for OBJECT/EMBED, and data() is a convention for jQuery)
- Get current mouse cursor position with Javascript: http://dev-notes.com/code.php?q=33
- How to highlight/select text on hover: http://stackoverflow.com/questions/2443948/how-to-highlight-text-on-hover
- Bookmark Site script: http://www.dynamicdrive.com/dynamicindex9/addbook.htm
- Iterate through Object properties: https://stackoverflow.com/questions/8312459/iterate-through-object-properties
- The Definitive Guide to Copying and Pasting (programmatically) in JavaScript: http://java.dzone.com/articles/definitive-guide-copying-and
- Using Javascript to Auto move cursor onto next form field: https://stackoverflow.com/questions/15337084/using-javascript-to-auto-move-cursor-onto-next-form-field
- Using the window.open method: http://www.javascript-coder.com/window-popup/javascript-window-open.phtml
- Open popup window with open.window method: http://javascript-array.com/scripts/window_open/ (no accessibility taken into account)
- The Perfect Pop-up (Updated 20 March 2007): http://www.accessify.com/features/tutorials/the-perfect-popup/
- Clickable Background (also known as a takeover): http://bbm.blackblogmedia.com/post/12331980673/clickable-background-ad
- How to add, remove and toggle CSS classes in JavaScript: https://attacomsian.com/blog/javascript-add-remove-toggle-css-classes
- INTRODUCTION TO JavaScript Functions -- DECLARING A FUNCTION: http://www.permadi.com/tutorial/jsFunc/index.html
- Function Declarations vs. Function Expressions: https://javascriptweblog.wordpress.com/2010/07/06/function-declarations-vs-function-expressions/
- Named function expressions demystified: http://kangax.github.io/nfe/
- var functionName = function() {} vs function functionName() {}: https://stackoverflow.com/questions/336859/var-functionname-function-vs-function-functionname[614]
- How do JavaScript closures work?: https://stackoverflow.com/questions/111102/how-do-javascript-closures-work?rq=1
- Checking for undefined, null, and empty variables in JavaScript: https://www.davidbcalhoun.com/2011/checking-for-undefined-null-and-empty-variables-in-javascript/[615][616]
- What is the !! (not not) operator in JavaScript?: https://stackoverflow.com/questions/784929/what-is-the-not-not-operator-in-javascript (coerce any value to boolean true or false to avoid null/empty string errors)
- Learn these neat JavaScript tricks in less than 5 minutes: https://medium.freecodecamp.org/9-neat-javascript-tricks-e2742f2735c3
- Basics of Monkey Patching: https://davidwalsh.name/monkey-patching[617]
- How to write and build JS libraries in 2018: https://medium.com/@kelin2025/so-you-wanna-use-es6-modules-714f48b3a953
- Display innerHTML of child element: https://stackoverflow.com/questions/5753817/display-innerhtml-of-child#5753895
- How to get the index of the element in javascript?: https://stackoverflow.com/questions/3779986/how-to-get-the-index-of-the-element-in-javascript
- How to find all Siblings of the currently selected DOM object: https://stackoverflow.com/questions/4378784/how-to-find-all-siblings-of-the-currently-selected-dom-object[618][619]
- Dynamic Script loading via DOM Element creation: http://unixpapa.com/js/dyna.html
- Using a bash script to minify and combine JavaScripts: http://www.pbs.org/design/2010/07/using-a-bash-script-to-minify-and-combine-javascripts.php
- How to Optimize JavaScript and CSS in Linux Using the YUI Compressor: http://lowfatcats.com/blog/1-tutorial/18-how-to-optimize-javascript-css-linux-using-yui-compressor.html
- What is Node.js and why should I care?: http://java.dzone.com/articles/what-nodejs-and-why-should-i
- Why We Use Node.js and Grunt to Build Server-side JavaScript: http://mechanics.flite.com/blog/2012/06/19/why-we-use-node-dot-js-and-grunt-to-build-javascript/
- JavaScript on the server - Growing the Node.js Community: http://hacks.mozilla.org/2012/01/javascript-on-the-server-growing-the-node-js-community/
- Implement a Browser Command Line with JavaScript: http://www.devx.com/webdev/Article/33577 (idea for launching specific webapps/websites with specific input params, similar to an OS command-line)
- How to Process Large Volumes of Data in JavaScript: https://www.sitepoint.com/javascript-large-data-processing/
- Permutations in JavaScript?: https://stackoverflow.com/questions/9960908/permutations-in-javascript
External Links
- wikipedia: Javascript
- wikipedia: ECMAScript[620][621]
- Open JavaScript (OpenJS) Foundation: https://openjsf.org/ (oversees/stewards [[[OSS]] a number of popular & important JavaScript projects including: Appium, Dojo, Electron, jQuery, Node.js, webpack, Jest and more...)[622]
- Wikipedia: TypeScript[623][624][625][626][627]
- wikipedia: Immediately-invoked function expression (IFFE)
- JavaScript naming conventions -- Do’s & Don’ts: https://medium.freecodecamp.org/javascript-naming-conventions-dos-and-don-ts-99c0e2fdd78a
- JavaScript version and supported browser versions: http://www.w3resource.com/javascript/introduction/javascript-version.php
- Testing for Object Types in JavaScript: http://www.planetpdf.com/developer/article.asp?ContentID=testing_for_object_types_in_ja
- JavaScript creator ponders past, future: http://www.infoworld.com/d/developer-world/javascript-creator-ponders-past-future-704
- 7 JavaScript Things I Wish I Knew Much Earlier In My Career: https://www.smashingmagazine.com/2010/04/seven-javascript-things-i-wish-i-knew-much-earlier-in-my-career/
- JavaScript Style Attributes: http://www.comptechdoc.org/independent/web/cgi/javamanual/javastyle.html
- UNOBTRUSIVE JAVASCRIPT - Separation of CSS and Javascript: http://www.onlinetools.org/articles/unobtrusivejavascript/cssjsseparation.html
- Example of CSS and Javascript separation: http://www.onlinetools.org/articles/unobtrusivejavascript/demo_cssseparation.html
- Default Parameters in ES6+ JavaScript: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Default_parameters
- JavaScript Functions -- Optional Parameters: http://javascript.about.com/od/3functions/a/fun04.htm
- How can I declare optional function parameters in Javascript?: https://stackoverflow.com/questions/12797118/how-can-i-declare-optional-function-parameters-in-javascript
- Is there a better way to do optional function parameters in JavaScript?: https://stackoverflow.com/questions/148901/is-there-a-better-way-to-do-optional-function-parameters-in-javascript
- Optional Parameters in Javascript: https://www.markhansen.co.nz/javascript-optional-parameters/
- Non-blocking JavaScript Downloads: http://yuiblog.com/blog/2008/07/22/non-blocking-scripts/
- Compress Query Strings in JavaScript: http://marcgrabanski.com/article/compress-query-strings-in-javascript
- Global Variables in JavaScript: http://snook.ca/archives/javascript/global_variable/
- Javascript Convert String to XML, XML to String: http://www.ariel.web.id/blog/2007/06/08/javascript-convert-string-to-xml-xml-to-string/
- Javascript url decode, encode: http://www.scripts.com/viewscript/javascript-url-decode/21125/
- Interaction, Interface, & Web Designer » Parallel Script Loading with LABjs : http://www.subprint.com/blog/parallel-script-loading-with-labjs/
- Enable/Disable Buttons according to the checkbox: http://www.houseofscripts.com/scripts/javascripts/disablebcb.htm
- Working with IFRAME in JavaScript : http://www.devarticles.com/c/a/JavaScript/Working-with-IFRAME-in-JavaScript/
- 13 Javascript libraries for visualizations on Datavisualization.ch: http://www.datavisualization.ch/tools/13-javascript-libraries-for-visualizations
- Unobtrusive JavaScript for ‘Print-This’ Links: http://perishablepress.com/press/2009/02/01/unobtrusive-javascript-for-print-this-links/
- Disable options in a multiple select - Javascript for IE: http://www.danieltome.com/blog/2007/08/16/disable-options-in-a-multiple-select-javascript-for-ie/
- Select, Option, Disabled And The JavaScript Solution: http://www.lattimore.id.au/2005/07/01/select-option-disabled-and-the-javascript-solution/
- Javascript Check and Uncheck All Checkboxes: http://www.shiningstar.net/articles/articles/javascript/checkboxes.asp?ID=ROLLA
- CheckBoxGroup: http://www.mattkruse.com/javascript/checkboxgroup/
- Simple way to get element by id within a div tag?: https://stackoverflow.com/questions/7171483/simple-way-to-get-element-by-id-within-a-div-tag
- PHP Comparison to JavaScript: http://www.theopensourcery.com/phpcomparetojs.htm
- Executing JavaScript on page load: http://simonwillison.net/2004/May/26/addLoadEvent/
- Using Multiple JavaScript Window Onload Functions: http://www.htmlgoodies.com/beyond/javascript/article.php/3724571
- Optional Function Arguments in JavaScript: http://www.openjs.com/articles/optional_function_arguments.php
- JavaScript Equalizer (table persistance observations): http://skewsme.com/observations4.html#tables
- Working with IDs and Classes with the Behaviour JavaScript library: http://www.devarticles.com/c/a/JavaScript/Working-with-IDs-and-Classes-with-the-Behaviour-JavaScript-Library/
- Change Div Background Image: http://programming.top54u.com/Samples/Javascript/Javascript-DOM/Change-Div-Background-Image/Default.aspx
- Comparing escape(), encodeURI(), and encodeURIComponent(): http://xkr.us/articles/javascript/encode-compare/
- Tutorials - HTML Table Add Row - innerHTML vs. DOM vs. cloneNode: http://www.mredkj.com/tutorials/tablebasics3.html
- How do I iterate through table rows and cells in JavaScript?: https://stackoverflow.com/questions/3065342/how-do-i-iterate-through-table-rows-and-cells-in-javascript
- Getting value from table cell in JavaScript…not jQuery: https://stackoverflow.com/questions/3072233/getting-value-from-table-cell-in-javascript-not-jquery
- How to Get or Assign value to HTML Label through javascript: http://sites.google.com/site/technicalinfosite/tips---techniques/howtogetorassignvaluetohtmllabelthroughjavascript
- Textnode translator for Javascript: http://flesler.blogspot.com/2008/05/textnode-translator-for-javascript.html
- Virtual Pagination script v2.0: http://www.dynamicdrive.com/dynamicindex17/virtualpagination.htm
- Using Regular Expressions with JavaScript and ActionScript: http://www.regular-expressions.info/javascript.html
- JavaScript - Loop through all elements in a form: http://pietschsoft.com/post/2006/06/01/JavaScript-Loop-through-all-elements-in-a-form.aspx
- JavaScript on PDF: http://www.ajaxwith.com/JavaScript-on-PDF.html
- how to change name attributes with Javascript : http://www.daniweb.com/forums/thread133307.html
- JavaScript HTML DOM Examples: http://www.w3schools.com/js/js_examples_3.asp
- DOM Element methods (with examples): http://www.javascriptkit.com/domref/elementmethods.shtml
- Easy Scroll - Accessible Content Scroller: http://cssglobe.com/post/1495/easy-scroll-accessible-content-scroller
- JavaScript Location Object: http://www.comptechdoc.org/independent/web/cgi/javamanual/javalocation.html[628][629][630][631][632]
- Re-binding jQuery Events on AJAX Callbacks: http://jetlogs.org/2009/01/29/re-binding-jquery-events-on-ajax-callbacks/
- Why do my events stop working after an AJAX request?: http://docs.jquery.com/Frequently_Asked_Questions#Why_do_..._.3F
- JavaScript and The Local File System - Part 1 - The Technologies: http://www.baconbutty.com/blog-entry.php?id=29
- JavaScript and The Local File System - Part 2 - Paths: http://www.baconbutty.com/blog-entry.php?id=30
- Add and Remove HTML elements dynamically with Javascript: http://www.dustindiaz.com/add-and-remove-html-elements-dynamically-with-javascript/
- Howto Dynamically Insert Javascript And CSS: http://www.hunlock.com/blogs/Howto_Dynamically_Insert_Javascript_And_CSS
- Help! I Don’t Know JavaScript!: http://mootools.net/blog/2007/06/05/help-i-dont-know-javascript/
- Javascript – URL validation: http://www.techiegyan.com/?p=36
- JS FAQ -- Checking undefined, isset and empty in Javascript: http://www.syamantics.com/js-faq-checking-undefined-isset-and-empty-in-javascript
- How to check for “undefined” in JavaScript?: https://stackoverflow.com/questions/3390396/how-to-check-for-undefined-in-javascript
- Javascript is_int(): http://www.andrewpeace.com/javascript-is-int.html
- Apple Developer world -- Dynamic Content with DOM-2 (Part I of II): http://www.devworld.apple.com/internet/webcontent/dom2i.html
- Dynamically loading an external JavaScript or CSS file: http://www.javascriptkit.com/javatutors/loadjavascriptcss.shtml
- A cross-browser JavaScript prompt: http://pipwerks.com/2007/08/08/a-cross-browser-javascript-prompt/
- JS (Server) removal of MS Word HTML/XML: http://www.1stclassmedia.co.uk/developers/clean-ms-word-formatting.php
- Something New, Part 1 -- shiny new select boxes: http://v2.easy-designs.net/articles/replaceSelect/
- Parsing a Querystring in JavaScript: http://adamv.com/dev/javascript/querystring
- How to read and write files in JavaScript (ActiveX): http://www.c-point.com/JavaScript/articles/file_access_with_JavaScript.htm
- Get multi-class (CSS styling) elements in JavaScript: http://chris-miller.org/archives/2008/10/02/get-multi-class-elements-in-javascript/
- Cool Count-up: http://www.codehouse.com/javascript/scripts/cool_countup/
- JavaScript for Setting Session ID and Visitor ID Cookies: http://www.mach5.com/support/analyzer/manual/html/General/CookiesJavaScript.htm
- how not to let console.log() to cause error on IE or other browsers: http://www.sitepoint.com/forums/showthread.php?t=575320
- Learning JavaScript by Example: http://www.fincher.org/tips/Languages/javascript.shtml
- Javascript console in IE: http://www.phpied.com/javascript-console-in-ie/
- How To Move Items Between Lists with JavaScript: http://www.devx.com/getHelpOn/10MinuteSolution/16372/1954
- Display XML in tree format using Javascript: http://www.codetoad.com/xml_javascript_data.asp
- How to get selected items from <select multiple ... > using Javascript: http://www.digitalamit.com/blog/blog/23.phtml
- JavaScript - Escaping Special Characters: http://www.the-art-of-web.com/javascript/escape/
- Get Elements By Class Name: http://snipplr.com/view/1696/get-elements-by-class-name/
- Change an element's class (attribute) with JavaScript: https://stackoverflow.com/questions/195951/change-an-elements-class-with-javascript
- How can I change an element's class with JavaScript?: https://stackoverflow.com/questions/195951/how-can-i-change-an-elements-class-with-javascript
- Force a computed property function to run: https://stackoverflow.com/questions/13769481/force-a-computed-property-function-to-run
- Simulating href click: http://www.hotscripts.com/forums/javascript/47828-simulating-href-click.html
- Handling runtime errors in JavaScript using try/catch/finally: http://www.javascriptkit.com/javatutors/trycatch.shtml
- Using literals: http://www.jspatterns.com/tag/literal-notation/
- Using associative arrays in javascript: http://www.pageresource.com/jscript/jarray2.htm
- JavaScript - Select and Option objects: http://www.javascriptkit.com/jsref/select.shtml
- Javascript replaceAll function: http://naspinski.net/post/Javascript-replaceAll-function.aspx[633]
- JavaScript Trim or Strip function: http://vision-media.ca/resources/javascript/javascript-trim-or-strip-function
- Intelligent String Abbreviation in JS: https://www.sitepoint.com/intelligent-string-abbreviation/
- Multi-line JavaScript: http://snook.ca/archives/javascript/multi-line-javascript
- Faster JavaScript Trim: http://blog.stevenlevithan.com/archives/faster-trim-javascript
- Fast Trim Function for Javascript: http://flesler.blogspot.com/2008/11/fast-trim-function-for-javascript.html
- Mac-like icon dock (v2): http://www.aplweb.co.uk/jQuery/Mac_Dock_v2/
- Using setTimeout with prototype object methods: http://www.planet-hood.com/Updates2/archives/2008/05/javascript_tip_using_settimeou.html
- Using named arguments in JavaScript functions: http://www.javascriptkit.com/javatutors/namedfunction.shtml
- JavaScript Method Overloading: http://ejohn.org/blog/javascript-method-overloading/
- Quick guide to somewhat advanced JavaScript: http://www.sergiopereira.com/articles/advjs.html
- Using the jQuery Framework with Google`s Ajax Libraries API: http://www.devshed.com/c/a/AJAX/Using-the-jQuery-Framework-with-Googles-Ajax-Libraries-API/
- JavaScript Arrays -- The Difference Between [] and { }: http://davidwalsh.name/javascript-arrays-brackets-braces
- A tracer utility in 2kb: http://javascriptweblog.wordpress.com/2010/06/01/a-tracer-utility-in-2kb/
- Ajax is not working in Firefox & Opera: http://bytes.com/topic/javascript/answers/641354-ajax-not-working-firefox-opera[634]
- Device and Viewport Size In JavaScript: http://ryanve.com/lab/dimensions/
- Finding the size of the browser window: http://www.howtocreate.co.uk/tutorials/javascript/browserwindow
- Is there a JavaScript/jQuery DOM change listener?: https://stackoverflow.com/questions/2844565/is-there-a-javascript-jquery-dom-change-listener
- Add event handler for body.onload by javascript within <body> part: https://stackoverflow.com/questions/5082165/add-event-handler-for-body-onload-by-javascript-within-body-part
- Implementing Memoization in JavaScript: https://www.sitepoint.com/implementing-memoization-in-javascript/
- 3D/interactive Javascript Games: http://www.javascriptgaming.com/
- Javascript Wolfenstein 3D: http://www.nihilogic.dk/labs/wolf/
- Javascript Wolfenstein 3D: http://blog.nihilogic.dk/2008/04/javascript-wolfenstein-3d.html
- Object-Oriented programming with JavaScript: http://viralpatel.net/blogs/2009/07/object-oriented-programming-with-javascript.html
- JavaScript image combobox v2.3: http://www.marghoobsuleman.com/jquery-image-dropdown
- Setting style/css class of html elements from javascript: https://web.archive.org/web/20140201060650/http://www.vijayjoshi.org/2009/01/24/setting-stylecss-class-of-html-elements-from-javascript/
- Change an element's class (attribute) with (Modern) JavaScript: https://stackoverflow.com/questions/195951/change-an-elements-class-with-javascript
- Javascript Chess: http://javascript.internet.com/games/javascript-chess-with-cpu-oppo.html
- Javascript/DHTML Chess: http://aab.pri.ee/chess/
- Javascript/DHTML Solitaire: http://www.dhtmlgoodies.com/scripts/game_solitaire/game_solitaire.html
- Javascript/DHTML Minesweeper: http://www.dhtmlgoodies.com/scripts/minesweeper/minesweeper.html
- Javascript/DHTML Sudoku: http://www.dhtmlgoodies.com/scripts/game_sudoku/game_sudoku.html
- jQuery sudoku: http://www.anti.ro/games/sudoku/
- What is minified JavaScript?: http://www.p-bhatt.com/2009/02/what-is-minified-javascript.html
- Defeating Dean Edwards' Javascript Packer: http://yaisb.blogspot.com/2006/10/defeating-dean-edwards-javascript.html
- Two Minute Guide to the JavaScript Security Model: http://www.actionscript.org/resources/blogs/43/Two-Minute-Guide-to-the-JavaScript-Security-Model.html
- JavaScript Form Handling: http://www.javascript-coder.com/javascript-form/javascript-form.phtml
- The HTML Form Submit Button (js and php for handling multiple submit buttons): http://www.javascript-coder.com/html-form/html-form-submit.phtml
- Traverse XML Data Using JavaScript: http://www.devx.com/xml/Article/11866/
- Display XML Files with Javascript: http://www.levmuchnik.net/Content/ProgrammingTips/WEB/XMLDisplay/DisplayXMLFileWithJavascript.html#Example
- Javascript - Getting and Setting Caret Position in Textarea: http://blog.vishalon.net/index.php/javascript-getting-and-setting-caret-position-in-textarea/
- Finding selection start and end position in a textarea, in Internet Explorer: http://the-stickman.com/web-development/javascript/finding-selection-cursor-position-in-a-textarea-in-internet-explorer/
- How to create a GUID / UUID in Javascript?: http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript
- Don't be eval(): http://24ways.org/2005/dont-be-eval [637]
- Dart - a language for structured web programming: http://googlecode.blogspot.com/2011/10/dart-language-for-structured-web.html (Google's attempted replacement for JavaScript)
- Quick Answer - Count the Number of Child Elements in DOM: http://acsummer.wordpress.com/2007/12/30/quick-answers-count-the-number-of-child-elements-in-dom/
- How to highlight search results with JavaScript and CSS: http://eriwen.com/javascript/highlight-search-results-with-js/
- How to get height of web page having scrollbar in javascript?: http://www.eggheadcafe.com/community/javascript/3/10120127/how-to-get-height-of-web-page-having-scrollbar-in-javascript.aspx
- JavaScript Creator And Mozilla CTO Brendan Eich To Advise Ajax.org: http://techcrunch.com/2011/03/28/javascript-creator-and-mozilla-cto-brendan-eich-to-advise-ajax-org/
- APRIL FOOL'S JOKE -- Vapor.js: https://github.com/madrobby/vapor.js (new super fast and lightweight JS library)[638][639]
- JavaScript Creator Says the Language Wasn't Just Dumb Luck: http://readwrite.com/2011/07/22/javascript-was-no-accident
- Everything a Java developer should know about the JavaScript landscape: http://blogs.oracle.com/geertjan/entry/everything_a_java_developer_should
- JavaScript - Beyond Just Web Apps: http://dzone.com/articles/javascript-beyond-just-web-apps
- You're Missing the Point of Promises (in JS): https://blog.domenic.me/youre-missing-the-point-of-promises/
- Comparison of JS Frameworks -- AngularJS vs. ReactJS vs. Ember.js: http://dzone.com/articles/comparison-of-js-frameworks-angularjs-vs-reactjs-v
- Cannot add click events to list items: http://stackoverflow.com/questions/17636043/cannot-add-click-events-to-list-items#17636165
- List of Dos and Don'ts in JavaScript Development: https://dzone.com/articles/list-of-dos-and-donts-in-javascript-development
- JavaScript Callback Hell -- Solved (async .vs. promise libraries): https://dzone.com/articles/javascript-callback-hell-solved
- Easy JavaScript Part 7 -- Object Property Descriptors: https://dzone.com/articles/easy-javascript-part-7-object-property-descriptors
- Something is wrong on the internet: https://medium.com/@jamesbridle/something-is-wrong-on-the-internet-c39c471271d2
- Why are some developers against mixing HTML and JavaScript (as in React)?: https://hashnode.com/post/why-are-some-developers-against-mixing-html-and-javascript-as-in-react-cije6t0e3020c2m539qjot1wz
- JSX, HTML-in-JS and CSS-in-JS: http://jamesknelson.com/css-html-in-js-mistakes/
- Insert HTML with React Variable Statements (JSX): https://stackoverflow.com/questions/23616226/insert-html-with-react-variable-statements-jsx
[640] [641] [642] [643] [644] [645]
- How it feels to learn JavaScript in 2016: https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f
- A Study Plan To Cure JavaScript Fatigue: https://medium.freecodecamp.org/a-study-plan-to-cure-javascript-fatigue-8ad3a54f2eb1
- Modern JavaScript Explained For Dinosaurs: https://medium.com/the-node-js-collection/modern-javascript-explained-for-dinosaurs-f695e9747b70
- Adding type=”module” to Scripts in "Pens" (on CodePen): https://blog.codepen.io/2017/12/26/adding-typemodule-scripts-pens/
- 13 Noteworthy Points from Google’s JavaScript Style Guide: https://medium.freecodecamp.org/google-publishes-a-javascript-style-guide-here-are-some-key-lessons-1810b8ad050b
- What if JavaScript wins?: https://medium.com/@anildash/what-if-javascript-wins-84898e5341a
- Glitch - Tackling the Biggest Pain Points in Web Development: https://medium.com/glitch/tackling-the-biggest-pain-points-in-web-development-57d64afe19dc
- JS Frameworks considered harmful: https://medium.com/@torazaburo/javascript-frameworks-considered-harmful-a7448382d9a0
- JavaScript Tricks You Won’t Find in Most Tutorials: https://medium.com/@bretcameron/12-javascript-tricks-yu-wont-find-in-most-tutorials-a9c9331f169d
- Conditional JavaScript for Experts: https://medium.com/hackernoon/conditional-javascript-for-experts-d2aa456ef67c
- Master the JavaScript Interview -- What is a Pure Function?: https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-pure-function-d1c076bec976
- 13 "JavaScript One-Liners" (that require ESE6+) that’ll make you look like a pro: https://medium.com/dailyjs/13-javascript-one-liners-thatll-make-you-look-like-a-pro-29a27b6f51cb
- Save Energy and Time with JavaScript Memoization: https://medium.com/swlh/save-energy-and-time-with-javascript-memoization-5167bc36e8b7 (memoization - storing the results of computationally expensive function calls, where client-specific caches are built up to avoid re-computing known values)
- Why do function declarations get hoisted and function expressions don't?: https://stackoverflow.com/questions/57799578/why-do-function-declarations-get-hoisted-and-function-expressions-dont
- 3 small tips to become Master Yoda of modern JavaScript: https://medium.com/front-end-weekly/3-small-tips-to-make-you-master-yoda-of-typescript-10f7ec4e2ff8
References
- ↑ Douglas Crockford's site on JavaScript: http://javascript.crockford.com/
- ↑ Brendan Eich - Proxies are Awesome!: http://jsconf.eu/2010/speaker/be_proxy_objects.html
- ↑ A Homepage for the JavaScript Specification: https://hacks.mozilla.org/2019/03/a-homepage-for-the-javascript-specification/
- ↑ wikipedia: ECMAScript
- ↑ Moz Dev -- Subresource Integrity (SRI): https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity
- ↑ Do not let your CDN betray you -- Use Subresource Integrity: https://hacks.mozilla.org/2015/09/subresource-integrity-in-firefox-43/
- ↑ JS Standard style guide - GitHub repo: http://github.com/feross/standard
- ↑ Why I Use a JavaScript Style Guide and Why You Should Too: https://www.sitepoint.com/why-use-javascript-style-guide/
- ↑ jQuery - JS style guide: https://contribute.jquery.org/style-guide/js/
- ↑ Airbnb JavaScript Style Guide: https://github.com/airbnb/javascript
- ↑ Google - JavaScript Style Guide: https://google.github.io/styleguide/javascriptguide.xml
- ↑ Google Reveals its HTML, CSS and JavaScript Style Guides: https://www.sitepoint.com/google-html-css-javascript-style-guides/
- ↑ JavaScript equality table: https://dorey.github.io/JavaScript-Equality-Table/
- ↑ wikipedia: Fault-tolerant system
- ↑ Behavioral Separation: http://www.alistapart.com/articles/behavioralseparation
- ↑ Remove Render-Blocking JavaScript: https://developers.google.com/speed/docs/insights/BlockingJS
- ↑ script (defer) doesn't work in IE<=9: https://github.com/h5bp/lazyweb-requests/issues/42 (workarounds & research on "DEFER" script attribute alternative)
- ↑ Can't append <script> element: http://stackoverflow.com/a/3603496
- ↑ Where is the best place to put <script> tags in HTML markup?: http://stackoverflow.com/questions/436411/where-is-the-best-place-to-put-script-tags-in-html-markup
- ↑ JavaScript and the end of progressive enhancement: http://skilldrick.co.uk/2011/05/javascript-and-the-end-of-progressive-enhancement/
- ↑ Pragmatic Progressive Enhancement: http://www.zachleat.com/web/pragmatic/
- ↑ A Complete Guide to Progressive Enhancement: http://www.webdesignerdepot.com/2010/08/a-complete-guide-to-progressive-enhancement/
- ↑ Progressive Enhancement - What it is and how to use it: http://coding.smashingmagazine.com/2009/04/22/progressive-enhancement-what-it-is-and-how-to-use-it/
- ↑ wikipedia: Adapter pattern
- ↑ Polyfill.io: https://polyfill.io/ | DOCS
- ↑ Polyfills and the evolution of the Web: https://www.w3.org/2001/tag/doc/polyfills/
- ↑ What is the difference between a shim and a polyfill?: https://stackoverflow.com/questions/6599815/what-is-the-difference-between-a-shim-and-a-polyfill
- ↑ WebComponents - Polyfills: https://www.webcomponents.org/polyfills
- ↑ Polymer Project - Polyfills: https://www.polymer-project.org/2.0/docs/polyfills
- ↑ Introduction To Polyfills & Their Usage: https://medium.com/beginners-guide-to-mobile-web-development/introduction-to-polyfills-their-usage-9cd6db4b1923
- ↑ WebXR Polyfill: https://github.com/immersive-web/webxr-polyfill
- ↑ Scripts -- async, defer: https://javascript.info/script-async-defer
- ↑ Script Tag - async & defer: https://stackoverflow.com/questions/10808109/script-tag-async-defer
- ↑ How to Defer Parsing of JavaScript in WordPress (4 Methods): https://kinsta.com/blog/defer-parsing-of-javascript/
- ↑ JavaScript Events: https://www.javascripttutorial.net/javascript-dom/javascript-events/
- ↑ stopPropagation() Event Method: https://www.w3schools.com/jsref/event_stoppropagation.asp
- ↑ JavaScript event loops, call stack and heap visualized; https://youtu.be/8aGhZQkoFbQ
- ↑ Loupe - callstack visualizer tool: http://latentflip.com/loupe
- ↑ How can I attach a window resize event listener in JavaScript?: https://stackoverflow.com/questions/13651274/how-can-i-attach-a-window-resize-event-listener-in-javascript
- ↑ Correct usage of addEventListener() / attachEvent()?: https://stackoverflow.com/questions/2657182/correct-usage-of-addeventlistener-attachevent/10896968
- ↑ JS adding multiple event listeners to one element: https://stackoverflow.com/questions/11845678/adding-multiple-event-listeners-to-one-element
- ↑ HTML DOM removeEventListener() method to stop listening on particular action: https://www.w3schools.com/jsref/met_element_removeeventlistener.asp
- ↑ Array.prototype.findIndex(): https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/findIndex
- ↑ Alternative or polyfill for Array.from on Internet Explorer: https://stackoverflow.com/questions/36810940/alternative-or-polyfill-for-array-from-on-the-internet-explorer/62682524#62682524
- ↑ Loop through key value pairs from an associative array with Javascript: http://www.electrictoolbox.com/loop-key-value-pairs-associative-array-javascript/
- ↑ How to get index of an object in an associative array?: https://stackoverflow.com/questions/9273157/javascript-how-to-get-index-of-an-object-in-an-associative-array
- ↑ 3 Ways to Check If an Object Has a Property in JavaScript: https://dmitripavlutin.com/check-if-object-has-property-javascript/
- ↑ JavaScript - Associative Arrays; Considered Harmful: http://andrewdupont.net/2006/05/18/javascript-associative-arrays-considered-harmful/
- ↑ Javascript Associative Arrays considered harmful: http://ajaxian.com/archives/javascript-associative-arrays-considered-harmful
- ↑ Hash Tables in Javascript -- Constructing a Hash Table Implementation for Javascript: http://www.mojavelinux.com/articles/javascript_hashes.html
- ↑ Understanding Higher-Order Functions in JavaScript: https://blog.bitsrc.io/understanding-higher-order-functions-in-javascript-75461803bad
- ↑ Get the first key name of a JavaScript object: https://stackoverflow.com/questions/3298477/get-the-first-key-name-of-a-javascript-object
- ↑ Get object size in JS: https://www.hacksparrow.com/javascript/get-object-size.html
- ↑ Why "Named Arguments" are better than "Positional Arguments" (and why destructuring is even better than JS Object-passing): https://blog.bitsrc.io/javascript-why-named-arguments-are-better-than-positional-arguments-9b15ab3155ef
- ↑ 3 Practical Uses of Object Destructuring in JavaScript: https://medium.com/better-programming/3-practical-uses-of-object-destructuring-in-javascript-a2c34ce3367b
- ↑ How to loop through objects keys and values in Javascript?: https://flexiple.com/loop-through-object-javascript/
- ↑ Composing Software - An Introduction: https://medium.com/javascript-scene/composing-software-an-introduction-27b72500d6ea
- ↑ An introduction to Object-Oriented Programming in JavaScript: https://medium.com/free-code-camp/an-introduction-to-object-oriented-programming-in-javascript-8900124e316a
- ↑ OOP in JS, Part 1 - Public/Private Variables and Methods: http://phrogz.net/js/classes/OOPinJS.html
- ↑ OOP in JS, Part 2 - Inheritance: http://phrogz.net/js/classes/OOPinJS2.html
- ↑ The Two Pillars of JavaScript -- Part 1 - How to Escape the 7th Circle of Hell: https://medium.com/javascript-scene/the-two-pillars-of-javascript-ee6f3281e7f3
- ↑ Why you should not modify a JavaScript object prototype: https://flaviocopes.com/javascript-why-not-modify-object-prototype/
- ↑ How we avoided if/else and wrote extendable code with Strategy Pattern: https://itnext.io/how-we-avoided-if-else-and-wrote-extendable-code-with-strategy-pattern-256e34b90caf
- ↑ Master the JavaScript Interview: What’s the Difference Between Class & Prototypal Inheritance?: https://medium.com/javascript-scene/master-the-javascript-interview-what-s-the-difference-between-class-prototypal-inheritance-e4cd0a7562e9
- ↑ JavaScript Class vs Prototype - Organizing JavaScript Code: https://dzone.com/articles/javascript-class-vs-prototype-organizing-javascrip
- ↑ How do JavaScript closures work under the hood: https://dmitryfrank.com/articles/js_closures
- ↑ Master the JavaScript Interview - What is a Closure?: https://medium.com/javascript-scene/master-the-javascript-interview-what-is-a-closure-b2f0d2152b36
- ↑ Closure - Stateful Function: https://medium.com/@thanhnguyentien/closure-stateful-function-e2a18690e549
- ↑ JavaScript Closures: https://www.w3schools.com/js/js_function_closures.asp
- ↑ More closure examples: http://www.javascriptkit.com/javatutors/closures2.shtml
- ↑ JavaScript Naming Convention best practices: https://medium.com/javascript-in-plain-english/javascript-naming-convention-best-practices-b2065694b7d
- ↑ JavaScript best practices — Designing functions: https://medium.com/swlh/javascript-best-practices-designing-functions-1632838c5074
- ↑ Javascript setInterval clearInterval within closure Simple Example Not Working Explained?: https://stackoverflow.com/questions/18957186/javascript-setinterval-clearinterval-simple-example-not-working-explained
- ↑ Is there any difference between 'currying' and 'closure' in JavaScript?: https://www.quora.com/Is-there-any-difference-between-currying-and-closure-in-JavaScript
- ↑ Closures, Partial Application and Currying: Effective Functional JavaScript: https://hackernoon.com/ingredients-of-effective-functional-javascript-closures-partial-application-and-currying-66afe055102a
- ↑ What is the difference between currying and partial application?: https://stackoverflow.com/questions/218025/what-is-the-difference-between-currying-and-partial-application
- ↑ From Closures to Curry and Compose: https://medium.com/sngular-devs/from-closures-to-curry-and-compose-197d2abcadd8
- ↑ wikipedia: Immediately invoked function expression
- ↑ What Are CJS, AMD, UMD, ESM, System, and IIFE?: https://betterprogramming.pub/what-are-cjs-amd-umd-esm-system-and-iife-3633a112db62
- ↑ IIFE in JavaScript - What Are Immediately Invoked Function Expressions?: https://www.freecodecamp.org/news/iife-in-javascript-what/
- ↑ What is the (function() { } )() construct in JavaScript?: https://stackoverflow.com/questions/8228281/what-is-the-function-construct-in-javascript
- ↑ Immediately Invoked Function Expression (IIFE): https://www.javatpoint.com/es6-immediately-invoked-function-expression
- ↑ JavaScript - Immediately Invoked Function Expressions (IIFE): https://www.geeksforgeeks.org/javascript-immediately-invoked-function-expressions-iife/
- ↑ Immediately-Invoked Function Expression (IIFE): https://benalman.com/news/2010/11/immediately-invoked-function-expression/
- ↑ Get a Cookie - Javascript: http://www.brenz.net/cookies/get_cookie.asp
- ↑ JavaScript and Cookies: http://www.tutorialspoint.com/javascript/javascript_cookies.htm
- ↑ Using cookies: http://www.howtocreate.co.uk/tutorials/javascript/cookies
- ↑ jQuery JSON Cookie Plugin: http://lab.distilldesign.com/json-cookie/
- ↑ JSON JavaScript cookies: http://www.phpied.com/json-javascript-cookies/
- ↑ JSON cookies with PHP: http://ryan.ifupdown.com/2009/07/26/json-cookies-with-php/
- ↑ (Prototype.js) Cookie Jar -- Yummy JSON Cookies: http://www.lalit.org/lab/jsoncookies
- ↑ Tracking without Cookies: http://www.thespanner.co.uk/2007/07/10/tracking-without-cookies/
- ↑ JavaScript adding "click" event listener by CSS class: https://stackoverflow.com/questions/21700364/javascript-adding-click-event-listener-to-class
- ↑ Javascript .querySelector find <div> by innerTEXT: https://stackoverflow.com/questions/37098405/javascript-queryselector-find-div-by-innertext
- ↑ getElementsByClassName() doesn't work in old Internet Explorers like IE6, IE7, IE8: https://stackoverflow.com/questions/6584635/getelementsbyclassname-doesnt-work-in-old-internet-explorers-like-ie6-ie7-i/25054465#25054465
- ↑ JavaScript querySelector examples: https://www.javascripttutorial.net/javascript-dom/javascript-queryselector/
- ↑ JavaScript basics - 2 ways to get child elements with JavaScript: https://mrfrontend.org/2017/10/2-ways-get-child-elements-javascript/
- ↑ Why does getElementById not work on elements inside the document element?: https://stackoverflow.com/questions/16475636/why-does-getelementbyid-not-work-on-elements-inside-the-document-element
- ↑ A Bunch of Options for Looping Over querySelectorAll NodeLists: https://css-tricks.com/a-bunch-of-options-for-looping-over-queryselectorall-nodelists/
- ↑ How to convert a NodeList to an array in JavaScript: https://attacomsian.com/blog/javascript-convert-nodelist-to-array
- ↑ Remove empty elements from an array in Javascript: https://stackoverflow.com/questions/281264/remove-empty-elements-from-an-array-in-javascript
- ↑ querySelector and querySelectorAll vs getElementsByClassName and getElementById in JavaScript: https://stackoverflow.com/questions/14377590/queryselector-and-queryselectorall-vs-getelementsbyclassname-and-getelementbyid
- ↑ W3schools -- JS getAttribute: https://www.w3schools.com/jsref/met_element_getattribute.asp
- ↑ getAttributes (DOMNode - JavaScript): https://help.hcltechsw.com/dom_designer/beta/12.0.1/reference/r_wpdr_dom6_domnode_getattributes_r.html
- ↑ Get all Attributes from a HTML element with Javascript/jQuery: https://stackoverflow.com/questions/2048720/get-all-attributes-from-a-html-element-with-javascript-jquery
- ↑ W3schoools -- another place to put above loadXMLString code snippet: https://www.w3schools.com/jsref/tryit.asp?filename=tryjsref_document_getelementsbytagname
- ↑ W3schools -- View the sample books.xml file: http://www.w3schools.com/DOM/books.xml
- ↑ W3schools -- AJAX XML Example: https://www.w3schools.com/js/js_ajax_xmlfile.asp
- ↑ W3schools -- loadXMLString: https://www.w3schools.com/xml/xml_parser.asp
- ↑ MozDev -- DOM Parser: https://developer.mozilla.org/en-US/docs/Web/API/DOMParser/parseFromString
- ↑ W3schools -- loadXMLString: https://w3schools.sinsixx.com/dom/dom_loadxmldoc.asp.htm#table30
- ↑ XML parsing of a variable string in JavaScript: https://stackoverflow.com/questions/649614/xml-parsing-of-a-variable-string-in-javascript
- ↑ loadXML method (XMLDocument): http://help.dottoro.com/ljadewkq.php
- ↑ XML parsing of a variable string in JavaScript: https://www.py4u.net/discuss/273977
- ↑ Javascript Promises/Q library (SLIDES): https://www.slideshare.net/async_io/javascript-promisesq-library-17206726
- ↑ Q lib -- examples gallery: https://github.com/kriskowal/q/wiki/Examples-Gallery
- ↑ Q.js examples: https://gist.github.com/guptag/7205768
- ↑ Q.js - Using deferred: https://stackoverflow.com/questions/12505850/q-js-using-deferred
- ↑ How to Use Deferred Objects in JavaScript: https://www.youtube.com/watch?v=dCSrw90yWX8
- ↑ Access to headers in request-promise get response: https://stackoverflow.com/questions/39234359/access-to-headers-in-request-promise-get-response
- ↑ Are there still reasons to use promise libraries like Q or BlueBird now that we have ES6 promises?: https://stackoverflow.com/questions/34960886/are-there-still-reasons-to-use-promise-libraries-like-q-or-bluebird-now-that-we
- ↑ Second Look at Promises using Native ES6 vs. q.js: https://scotthannen.org/blog/2016/03/03/second-look-at-promises-native-es6.html
- ↑ W3schools -- JS - Promises: https://www.w3schools.com/Js/js_promise.asp
- ↑ MozDev -- JS -- Promises: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
- ↑ MozDev -- JS -- Using Promises: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Using_promises
- ↑ JavaScript Promises - A tutorial with examples: https://www.toptal.com/javascript/javascript-promises
- ↑ Promise chaining example: https://gist.github.com/domenic/2431341
- ↑ JavaScript Promise explained with examples: https://dotnettutorials.net/lesson/javascript-promise/
- ↑ Show/Hide solution: http://sonspring.com/journal/show-hide-solution
- ↑ Traditional Div Show/Hide revised: http://www.scriptygoddess.com/archives/2004/01/06/another-revision-to-the-showhide-script/
- ↑ Unobtrusive Show/Hide: http://www.bobbyvandersluis.com/articles/unobtrusive_show_hide/index.html
- ↑ How to hide, show, or toggle your div: http://www.randomsnippets.com/2008/02/12/how-to-hide-and-show-your-div/
- ↑ Show & Hide Layers: http://www.geocities.com/technofundo/tech/js/showhide.html
- ↑ JavaScript Source's Show/Hide DIV layers: http://javascriptsource.com/miscellaneous/show-hide-a-div.html
- ↑ Show/Hide content using DIVs: http://www.webmasterworld.com/forum91/441.htm
- ↑ jQuery simple show/hide solution: http://jsfiddle.net/cse_tushar/6FzSb/
- ↑ Check if element is visible in DOM: http://stackoverflow.com/questions/19669786/check-if-element-is-visible-in-dom
- ↑ jQuery simple show/hide solution + HASH navigation: http://jsfiddle.net/bcmoney/dumLmvn7/ (UPDATED to allow external link-based navigation into DOM items not displayed yet)
- ↑ JavaScript date validation: http://www.redips.net/javascript/date-validation/
- ↑ Learn to validate input fields that require numeric (check negative, positive, decimal) or money values using Javascript: http://www.erobosoftware.com/scripts/javascript/scripts_code.php?id=22§ion=Javascript&division=Forms
- ↑ FULL Browser & OS detection (in JS and/or PHP): http://techpatterns.com/downloads/javascript_browser_detection.php
- ↑ Operating System through navigator object: http://www.javascripter.net/faq/operatin.htm
- ↑ Apple on Object Detection: http://developer.apple.com/internet/webcontent/objectdetection.html
- ↑ Beginner's Guide to Node.JS: http://nodeguide.com/beginner.html
- ↑ A Quickstart for Node.JS: http://www.ixxus.com/blog201209quick-start-nodejs/
- ↑ Node.js overview for Java Developers: https://dzone.com/articles/what-is-nodejs-for-java-developers
- ↑ How to Implement Node + React Isomorphic JavaScript & Why it Matters : https://strongloop.com/strongblog/node-js-react-isomorphic-javascript-why-it-matters/
- ↑ Node.js and the new web front-end: http://www.nczonline.net/blog/2013/10/07/node-js-and-the-new-web-front-end/
- ↑ Node.js is genuinely exciting: http://blog.simonwillison.net/post/57956855516/node
- ↑ Node.JS - IRC client example from Ryan Dahl's original NodeJS demo/talk: https://gist.github.com/ry/a3d0bbbff196af633995
- ↑ JSConf EU 2018 -- Ryan Dahl - 10 Things I Regret About Node.js: https://www.youtube.com/watch?v=M3BM9TB-8yA
- ↑ Ryan Dahl’s Node.js regrets lead to Deno project: https://www.infoworld.com/article/3283250/node-js/ryan-dahls-nodejs-regrets-lead-to-deno.html
- ↑ "Intro to Node.JS" talk - by founder Ryan Dahl (2009): http://s3.amazonaws.com/four.livejournal/20091117/jsconf.pdf
- ↑ An Introduction to Node.js (Part 1): https://dzone.com/articles/introduction-to-nodejs-3
- ↑ An Introduction to Node.js (Part 2): https://dzone.com/articles/an-introduction-to-nodejs-part-2
- ↑ How to use NodeJS without frameworks and external libraries: https://hackernoon.com/how-to-use-nodejs-without-frameworks-and-external-libraries-97eb6acac9e3
- ↑ Nodejs C++/JS Boundary: Crossing The Rubicon: https://blog.bitsrc.io/nodejs-c-js-boundary-crossing-the-rubicon-c9c5511907a2
- ↑ Introduction to Glitch for Node.js Apps in the Cloud: https://blog.bitsrc.io/introduction-to-glitch-for-node-js-apps-in-the-cloud-cd263de5683f
- ↑ How to get the current directory in Node.js: https://attacomsian.com/blog/nodejs-get-current-directory
- ↑ Streaming File Uploads with Node.js: http://debuggable.com/posts/streaming-file-uploads-with-node-js:4ac094b2-b6c8-4a7f-bd07-28accbdd56cb
- ↑ OWASP Node Goat Project: https://owasp.org/www-project-node.js-goat/ | DEMO | SRC (intentionally vulnerable NodeJS sample app, for use in "NodeJS Penetration Testing training" and/or Developer education on common issues and remediation, as well as Red/Blue/Purple Team activities)
- ↑ How to change Node.js's console font color?: https://stackoverflow.com/questions/9781218/how-to-change-node-jss-console-font-color (without introducing a dependency and getting hacked like with NPM colors | SRC)
- ↑ Open source maintainer pulls the plug on npm packages colors and faker, now what?: https://snyk.io/blog/open-source-npm-packages-colors-faker/
- ↑ Dev corrupts NPM libs 'colors' and 'faker' breaking thousands of apps: https://www.bleepingcomputer.com/news/security/dev-corrupts-npm-libs-colors-and-faker-breaking-thousands-of-apps/
- ↑ Node.js Server-Side JavaScript Injection Detection & Exploitation: https://blog.gdssecurity.com/labs/2015/4/15/nodejs-server-side-javascript-injection-detection-exploitati.html
- ↑ Hacking NodeJS & MongoDB: https://blog.websecurify.com/2014/08/hacking-nodejs-and-mongodb.html
- ↑ Nodejs Security - Command Injection: https://hackernoon.com/nodejs-security-issue-javascript-node-example-tutorial-vulnerabilities-hack-line-url-command-injection-412011924d1b
- ↑ Exploiting WebSocket (Application Wide XSS / CSRF): https://medium.com/@osamaavvan/exploiting-websocket-application-wide-xss-csrf-66e9e2ac8dfa
- ↑ Bypassing a restrictive JS sandbox: https://licenciaparahackear.github.io/en/posts/bypassing-a-restrictive-js-sandbox/
- ↑ Node-gyp lib: https://www.npmjs.com/package/node-gyp
- ↑ Node-gyp. MSBuild.exe` failed with exit code: 1: https://stackoverflow.com/questions/46225835/node-gyp-msbuild-exe-failed-with-exit-code-1
- ↑ Updating npm when using nvm-windows: https://teknotopnews.com/otomotif-https-stackoverflow.com/questions/54652381/updating-npm-when-using-nvm-windows
- ↑ Node.js is Cancer (or a scalability disaster waiting to happen): http://web.archive.org/web/20120104233829/http://teddziuba.com/2011/10/node-js-is-cancer.html
- ↑ Node.js -- Doctor’s Offices .vs. Fast Food Restaurants – Understanding Event-driven Programming: http://code.danyork.com/2011/01/25/node-js-doctors-offices-and-fast-food-restaurants-understanding-event-driven-programming/
- ↑ How to Interact With a Database Using the Async Module in Node.js: https://dzone.com/articles/how-to-interact-with-a-database-using-the-async-mo
- ↑ Workaround for Database Bind Issues (Oracle PL/SQL Stored Procedure integration to Node.JS): https://dzone.com/articles/workaround-for-using-node-oracledb-with-a-plsql-ou (must be defined as a function and force to output results as text)
- ↑ How can I pass a variable while using `require` in node.js?: https://stackoverflow.com/questions/9146980/how-can-i-pass-a-variable-while-using-require-in-node-js
- ↑ How to detect if script is running in browser or in Node.js?: https://stackoverflow.com/questions/34550890/how-to-detect-if-script-is-running-in-browser-or-in-node-js
- ↑ Netflix migrating 1/2 of their API to Node.js: https://www.reddit.com/r/node/comments/8i8jzq/netflix_migrating_12_of_their_api_to_nodejs/
- ↑ The definitive Node.js handbook: https://medium.freecodecamp.org/the-definitive-node-js-handbook-6912378afc6e
- ↑ How do I debug Node.js applications?: https://stackoverflow.com/questions/1911015/how-do-i-debug-node-js-applications
- ↑ Requiring modules in Node.js -- Everything you need to know: https://medium.freecodecamp.org/requiring-modules-in-node-js-everything-you-need-to-know-e7fbd119be8
- ↑ ncp - Asynchronous recursive file & directory copying: https://www.npmjs.com/package/ncp
- ↑ node.js ncp | fs.readdir | missing files | use of callback: https://stackoverflow.com/questions/50020179/node-js-ncp-fs-readdir-missing-files-use-of-callback
- ↑ Check synchronously if file/directory exists in Node.js: https://stackoverflow.com/questions/4482686/check-synchronously-if-file-directory-exists-in-node-js
- ↑ Fixing npm permissions: https://github.com/mixonic/docs.npmjs.com/blob/master/content/getting-started/fixing-npm-permissions.md
- ↑ Update Now! Node.js version 8.x is Not Supported from 2020: https://blog.risingstack.com/update-nodejs-8-end-of-life-no-support/
- ↑ HOW TO CLEAN UP YOUR JAVASCRIPT BUILD WITH TREE SHAKING: https://web.archive.org/web/20190731133056/https://www.engineyard.com/blog/tree-shaking
- ↑ Minification is not enough, you need tree shaking: http://blog.sethladd.com/2013/01/minification-is-not-enough-you-need.html
- ↑ Tree-shaking versus dead code elimination: https://medium.com/@Rich_Harris/tree-shaking-versus-dead-code-elimination-d3765df85c80
- ↑ Failed to exec start script - EventEmitter.<anonymous> (/usr/local/lib/node_modules/npm/lib/utils/lifecycle.js:279:16): https://stackoverflow.com/questions/49446277/failed-to-exec-start-script-eventemitter-anonymous-usr-local-lib-node-modu
- ↑ How one developer just broke Node, Babel and thousands of projects in 11 lines of JavaScript: https://www.theregister.com/2016/03/23/npm_left_pad_chaos/
- ↑ Local Lambda development challenges (with NodeJS): https://advancedweb.hu/lambda-development-toolbox-set-environment-variables-locally/
- ↑ Meta Open Source to donate Jest to the OpenJS Foundation: https://sdtimes.com/softwaredev/meta-open-source-to-donate-jest-to-the-openjs-foundation/
- ↑ Node.js Unit Testing (with JEST) get started quickly with examples: https://www.testim.io/blog/node-js-unit-testing-get-started-quickly-with-examples/
- ↑ Trying ES6 style import gives 'Cannot use import statement outside a module': https://stackoverflow.com/questions/59042716/trying-es6-style-import-gives-cannot-use-import-statement-outside-a-module
- ↑ Mocha + TypeScript: Cannot use import statement outside a module Code Answer: https://www.tutorialguruji.com/node-js/mocha-typescript-cannot-use-import-statement-outside-a-module/
- ↑ Node.js -- "SyntaxError: Cannot use import statement outside a module": https://stackoverflow.com/questions/62488898/node-js-syntaxerror-cannot-use-import-statement-outside-a-module
- ↑ Mocha + TypeScript -- Cannot use import statement outside a module: https://stackoverflow.com/questions/60993812/mocha-typescript-cannot-use-import-statement-outside-a-module
- ↑ error 'env' is not recognized as an internal or external command?: https://stackoverflow.com/questions/41254781/error-env-is-not-recognized-as-an-internal-or-external-command
- ↑ Writing unit tests in TypeScript: https://chiragrupani.medium.com/writing-unit-tests-in-typescript-d4719b8a0a40
- ↑ I See Deno in Your Future: https://www.bitquabit.com/post/i-see-deno-in-your-future/
- ↑ npm install vs sudo npm install -g: https://stackoverflow.com/questions/20264157/npm-install-vs-sudo-npm-install-g
- ↑ Fixing intermittant 'EPERM: operation not permitted' on npm install: https://alastaircrabtree.com/fixing-intermittant-eperm-operation-not-permitted-on-npm-install/
- ↑ npm ERR! Error -- EPERM - operation not permitted, rename: https://stackoverflow.com/questions/39293636/npm-err-error-eperm-operation-not-permitted-rename
- ↑ Snyk - NodeJS dependency security analysis tool: https://snyk.io/
- ↑ yarn vs npm -- Everything You Need to Know: https://www.sitepoint.com/yarn-vs-npm/
- ↑ An Absolute Beginner's Guide to Using npm: https://dzone.com/articles/an-absolute-beginners-guide-to-using-npm-1
- ↑ Upload Files Or Images To Server Using Node.js: http://dzone.com/articles/upload-files-or-images-to-server-using-nodejs
- ↑ Using Resources from npm on CodePen: https://blog.codepen.io/2017/08/11/using-resources-npm-codepen/
- ↑ How to setup Node.js & NPM behind a corporate web proxy: https://jjasonclark.com/how-to-setup-node-behind-web-proxy/
- ↑ NPM Behind A Proxy Server: https://forum.freecodecamp.org/t/npm-behind-a-proxy-server/19386
- ↑ Set and reset proxy for git and npm connection : http://jonathanblog2000.blogspot.com/2013/11/set-and-reset-proxy-for-git-and-npm.html
- ↑ How to clear https proxy setting of NPM?: https://stackoverflow.com/questions/21228995/how-to-clear-https-proxy-setting-of-npm
- ↑ How to use NPM Install (The Command) behind Corporate Proxy Server: https://www.c-sharpcorner.com/article/how-to-use-npm-install-the-command-behind-corporate-proxy-server/
- ↑ Fix the infamous "npm ERR cb() never called" error: https://stackoverflow.com/questions/15393821/npm-err-cb-never-called
- ↑ Node error npm ERR! cb() never called: https://stackoverflow.com/questions/49744843/node-error-npm-err-cb-never-called
- ↑ STARTING NODE FOREVER SCRIPTS AT BOOT W/ CENTOS: http://blog.aronduby.com/starting-node-forever-scripts-at-boot-w-centos/
- ↑ You don’t know Node: https://medium.com/@samerbuna/you-dont-know-node-6515a658a1ed
- ↑ How we make npm packages work in the browser: https://hackernoon.com/how-we-make-npm-packages-work-in-the-browser-announcing-the-new-packager-6ce16aa4cee6
- ↑ Introducing the npm semantic version calculator: https://blog.npmjs.org/post/115305091285/introducing-the-npm-semantic-version-calculator
- ↑ Everything You Wanted To Know About “package-lock.json” But Were Too Afraid To Ask: https://medium.com/coinmonks/everything-you-wanted-to-know-about-package-lock-json-b81911aa8ab8
- ↑ Why npm Scripts?: https://css-tricks.com/why-npm-scripts/
- ↑ Why I Left Gulp and Grunt for npm Scripts: https://medium.freecodecamp.org/why-i-left-gulp-and-grunt-for-npm-scripts-3d6853dd22b8
- ↑ Task automation with npm run -- using the scripts field: https://web.archive.org/web/20131121035826/https://substack.net/task_automation_with_npm_run
- ↑ Advanced front-end automation with npm scripts: https://www.youtube.com/watch?v=0RYETb9YVrk
- ↑ How to Use npm as a Task Runner: blog.teamtreehouse.com/use-npm-task-runner
- ↑ How I automated my job with Node.js: https://medium.com/dailyjs/how-i-automated-my-job-with-node-js-94bf4e423017
- ↑ Automated Tests in Node.js: https://www.davidbaumgold.com/tutorials/automated-tests-node/
- ↑ Advanced Unit Testing Tools For Node.Js: http://blog.wercker.com/advanced-unit-testing-tools-for-node-js
- ↑ NPM -- source-map-explorer: https://www.npmjs.com/package/source-map-explorer (analyze & debug JavaScript/Sass/LESS code bloat through source maps)
- ↑ "npm-run-all" tool: https://github.com/mysticatea/npm-run-all (A CLI tool to run multiple npm-scripts in parallel or sequential)
- ↑ npm’s 2019 JavaScript Ecosystem Survey Shows 63% of Respondents are Using React: https://wptavern.com/npms-2019-javascript-ecosystem-survey-shows-63-of-respondents-are-using-react
- ↑ 13 npm Tricks for Faster JavaScript Development: https://medium.com/@bretcameron/13-npm-tricks-for-faster-javascript-development-4fe2a83f87a2
- ↑ Adding a Dynamic Calendar to HarpJS: http://java.dzone.com/articles/adding-dynamic-calendar-harpjs
- ↑ Testing Modular Front-end in JS: https://frontendmasters.com/courses/testing-modular-front-end/
- ↑ Using Mocha JS, Chai JS and Sinon JS to Test your Frontend JavaScript Code: https://blog.codeship.com/mocha-js-chai-sinon-frontend-javascript-code-testing-tutorial/
- ↑ Automating MochaJS Tests for a Node.js App: https://www.distelli.com/docs/tutorials/automated-mocha-tests-for-node/
- ↑ Testing Node.js With Mocha and Chai: http://mherman.org/blog/2015/09/10/testing-node-js-with-mocha-and-chai/
- ↑ Unit Test Your JavaScript Using Mocha and Chai: https://www.sitepoint.com/unit-test-javascript-mocha-chai/
- ↑ Is Node.js overrated?: https://www.quora.com/Is-Node-js-overrated
- ↑ NPM vs. Bower vs. Browserify vs. Gulp vs. Grunt vs. Webpack: https://stackoverflow.com/questions/35062852/npm-vs-bower-vs-browserify-vs-gulp-vs-grunt-vs-webpack
- ↑ Gulp vs Grunt vs Webpack: Comparison of (Node.JS) Build Tools & Task Runners: https://da-14.com/blog/gulp-vs-grunt-vs-webpack-comparison-build-tools-task-runners
- ↑ Here’s how you can actually use Node environment variables: https://medium.freecodecamp.org/heres-how-you-can-actually-use-node-environment-variables-8fdf98f53a0a
- ↑ How one developer just broke Node, Babel and thousands of projects in 11 lines of JavaScript: https://www.theregister.co.uk/2016/03/23/npm_left_pad_chaos/
- ↑ Monorepos Made Easier with Bit & NPM: https://blog.bitsrc.io/monorepo-architecture-simplified-with-bit-and-npm-b1354be62870
- ↑ React.JS, Bit & NPM -- Movie App: https://github.com/teambit/movie-app (sample React.JS application deconstructed to Bit components, to be a shared-library)
- ↑ Node.js Open Source of the Month (v.June 2018): https://medium.mybridge.co/node-js-open-source-of-the-month-v-june-2018-df256be9dac5
- ↑ How do I determine the current operating system with Node.js: https://stackoverflow.com/questions/8683895/how-do-i-determine-the-current-operating-system-with-node-js
- ↑ How to install and run lessc on top of node.js and Windows?: https://stackoverflow.com/questions/16492940/how-to-install-and-run-lessc-on-top-of-node-js-and-windows
- ↑ Global npm install location on windows?: https://stackoverflow.com/questions/33819757/global-npm-install-location-on-windows
- ↑ 5 Typical Responses From Oracle JET's Unofficial World Tour: https://blogs.oracle.com/geertjan/five-typical-responses-from-oracle-jets-unofficial-world-tour
- ↑ You don't (may not) need Lodash/Underscore: https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore
- ↑ Differences between Lodash and Underscore.js: https://stackoverflow.com/questions/13789618/differences-between-lodash-and-underscore-js
- ↑ 10 Lodash Features You Can Replace with ES6: https://www.sitepoint.com/lodash-features-replace-es6/
- ↑ You might not need lodash (in your ES2015+ project): https://xebia.com/blog/you-might-not-need-lodash-in-your-es2015-project/
- ↑ Why You shouldn’t use lodash anymore and use pure JavaScript instead: https://codeburst.io/why-you-shouldnt-use-lodash-anymore-and-use-pure-javascript-instead-c397df51a66
- ↑ Pure JavaScript Functions as a Replacement for Lodash: https://blog.bitsrc.io/you-dont-need-lodash-or-how-i-started-loving-javascript-functions-3f45791fa6cd
- ↑ You Might Not Need Lodash: https://dev.to/antjanus/you-might-not-need-lodash--khj
- ↑ Redux, normalised entities and lodash merge: https://stackoverflow.com/questions/41872065/redux-normalised-entities-and-lodash-merge
- ↑ What is the best JS templating framework?: http://www.quora.com/JavaScript/What-is-the-best-JavaScript-templating-framework-and-why
- ↑ JS micro-templating: http://ejohn.org/blog/javascript-micro-templating/
- ↑ wikipedia: AngularJS
- ↑ Angular vs React vs Vue — Getting Started: https://dzone.com/articles/angular-vs-react-vs-vue-getting-started
- ↑ Five Common Angular Mistakes: http://java.dzone.com/articles/five-common-angular-mistakes
- ↑ I'm Not Mocking (literally, as in "making fun of" not "Mock test" or "Mock-up") You, Just Your AngularJS Tests: http://java.dzone.com/articles/im-not-mocking-you-just-your (a suggestions for better way to create interface/wrapper around external REST services in AngularJS)
- ↑ Learn Angular JS -- Getting Started: http://www.creativedev.in/2015/06/learn-angular-js-getting-started/
- ↑ How to Share Data Between Controllers in AngularJS : http://java.dzone.com/articles/how-share-data-between
- ↑ Dependency Injection in Angular 1 .vs. Angular 2: http://dzone.com/articles/dependency-injection-in-angular-1-vs-angular-2
- ↑ How AngularJS Communicates With Web Services: http://dzone.com/articles/how-angularjs-communicates-with-web-services
- ↑ Serverless REST API with Angular, Persistence and Security: http://dzone.com/articles/serverless-rest-api-with-angular-persistence-and-s
- ↑ Developing a Web Application Using Angular (5-part series): https://dzone.com/articles/developing-a-web-application-using-angular
- ↑ Angular -- Effective Component Patterns - Sharing data between components: https://itnext.io/angular-effective-component-patterns-f5f7f08e2072
- ↑ IONIC IDENTITY VAULT: https://cdn2.hubspot.net/hubfs/3776657/Identity%20Vault%20Factsheet.pdf
- ↑ Announcing Ionic Portals: https://ionicframework.com/blog/announcing-ionic-portals/
- ↑ Awesome Ionic: https://github.com/candelibas/awesome-ionic
- ↑ Ionic "quick guide": https://www.tutorialspoint.com/ionic/ionic_quick_guide.htm
- ↑ Improved UX for Ionic apps with Skeleton Loading Screens: https://ionicthemes.com/tutorials/about/improved-ux-for-ionic-apps-with-skeleton-loading-screens
- ↑ Deploying Capacitor Applications to iOS (Development & Distribution): https://www.joshmorony.com/deploying-capacitor-applications-to-ios-development-distribution/
- ↑ Ionic & React -- building a "BitCoin price tracker" app: https://www.youtube.com/playlist?list=PLtKjv92L0ihBWO6NtZhXEsR9NXf7Uf_ki
- ↑ How to make Ionic apps in React Using Capacitor: https://enappd.com/blog/how-to-make-ionic-apps-in-react-using-capacitor/26/
- ↑ Creating a Dynamic/Adaptable Splash Screen for Capacitor (Android): https://www.joshmorony.com/creating-a-dynamic-universal-splash-screen-for-capacitor-android/
- ↑ Building an Ionic Firebase Location Tracker with Capacitor & Google Maps: https://devdactic.com/ionic-firebase-location-capacitor/
- ↑ Ionic 4 Angular 7 Demo of routable transitions with a travel app: https://github.com/sean-perkins/ionic-route-animation-demo
- ↑ Ionic 4 -- Autoplay "in-app" videos on scroll: https://medium.com/@JordanBenge/ionic-4-autoplay-videos-on-scroll-6eb00213cdb4
- ↑ Announcing "Ionic React": https://ionicframework.com/blog/announcing-ionic-react/
- ↑ React Native vs.Flutter vs. Ionic (Cordova version) -- Which is Challenging Platform for Your App: https://hackernoon.com/react-native-vsflutter-vs-ionic-which-is-challenging-platform-for-your-app-623qp3yqm
- ↑ Ionic (Cordova version) vs. React Native -- A Comparison Guide: https://ionicframework.com/resources/articles/ionic-vs-react-native-a-comparison-guide
- ↑ React Native vs. Ionic (Cordova version) explained -- A Step-by-Step Evaluation: https://codeburst.io/react-native-vs-ionic-explained-a-step-by-step-evaluation-23975999887
- ↑ Which Is Better For My Startup - Ionic (Cordova version) or React Native?: https://expertise.jetruby.com/which-is-better-for-my-startup-ionic-or-react-native-474551b6a7dc
- ↑ React Native vs. Ionic (Cordova version) – Which Hybrid App Development Framework Should You Pick?: https://ideamotive.co/blog/react-native-vs-ionic/
- ↑ StarBlitz: https://ionic-react-demo.stackblitz.io/app/ (lightweight Ionic-ReactNative/Capacitor demo showing basic image grid and simulating playing music)
- ↑ StarTrack: https://github.com/mhartington/StarTrack-react | DEMO (full reference implementation of Ionic-ReactNative/Capacitor to build a cross-platform Music app that actually integrates to Apple's iTunes APIs)
- ↑ Ionic basic components reference app: https://github.com/sunzhongshan1988/ionic-reference-app | DEMO
- ↑ Ionic Angular Conference Application: https://github.com/ionic-team/ionic-conference-app
- ↑ Announcing the (new) Ionic Vue Beta: https://ionicframework.com/blog/announcing-the-new-ionic-vue-beta/
- ↑ Announcing Ionic Vue (finalized): https://ionicframework.com/blog/announcing-ionic-vue/
- ↑ Announcing Ionic Secure Storage: Secure, reliable high-performance data access: https://ionicframework.com/blog/announcing-ionic-secure-storage-secure-reliable-high-performance-data-access/
- ↑ New early access program for extending native apps with the web: https://blog.ionicframework.com/new-early-access-program-for-extending-native-apps-with-the-web/
- ↑ Ionic Payments -- Build secure, cross-platform payment experiences: https://ionic.io/resources/webinars/ionic-payments-secure-cross-platform-payment-experiences | SRC | SLIDES | DOCS
- ↑ Ionic Portals -- Introducing the supercharged WebView for Native Apps: https://ionicframework.com/blog/ionic-portals-web-view/
- ↑ Backbone.js -- Getting Started: https://dzone.com/articles/backbonejs-getting-started (JS library that provides models with key-value bindings and custom events, views with declarative event handling, and collections with an API)
- ↑ KnockoutJS - Quick Guide: https://www.tutorialspoint.com/knockoutjs/knockoutjs_quick_guide.htm
- ↑ Knockout JS docs -- intro & benefits: https://knockoutjs.com/documentation/introduction.html
- ↑ Knockout JS docs -- Observables: https://knockoutjs.com/documentation/observables.html
- ↑ Knockout JS docs -- Computed Observables: https://knockoutjs.com/documentation/computedObservables.html
- ↑ Knockout JS docs -- The data-bind syntax: https://knockoutjs.com/documentation/binding-syntax.html
- ↑ Knockout JS docs -- The "attr" binding: https://knockoutjs.com/documentation/attr-binding.html
- ↑ Knockout JS docs -- The "value" binding: https://knockoutjs.com/documentation/value-binding.html
- ↑ Knockout JS docs -- The "if" & "ifnot" bindings: https://knockoutjs.com/documentation/if-binding.html
- ↑ Knockout JS docs -- The "event" binding: https://knockoutjs.com/documentation/event-binding.html
- ↑ Knockout JS docs -- The "submit" binding: https://knockoutjs.com/documentation/submit-binding.html
- ↑ Knockout JS docs -- The "selectedOptions" binding: https://knockoutjs.com/documentation/selectedOptions-binding.html
- ↑ KnockoutJS - Options Binding: https://www.tutorialspoint.com/knockoutjs/options-binding.htm
- ↑ Another Look at Custom Bindings for KnockoutJS: http://www.knockmeout.net/2011/07/another-look-at-custom-bindings-for.html
- ↑ (Knockout.JS) Call a function on enter key press: https://stackoverflow.com/questions/23087721/call-a-function-on-enter-key-press
- ↑ How can I get Knockout JS to data-bind on keypress instead of lost-focus?: https://stackoverflow.com/questions/4386311/how-can-i-get-knockout-js-to-data-bind-on-keypress-instead-of-lost-focus
- ↑ Is there a way to avoid that the submit binding of knockoutjs sends the form when pressing the enter key?: https://stackoverflow.com/questions/10285154/is-there-a-way-to-avoid-that-the-submit-binding-of-knockoutjs-sends-the-form-whe
- ↑ Knockout observable latest value: https://stackoverflow.com/questions/20746853/knockout-observable-latest-value
- ↑ Change event on select with knockout binding, how can I know if it is a real change?: https://stackoverflow.com/questions/11078016/change-event-on-select-with-knockout-binding-how-can-i-know-if-it-is-a-real-cha
- ↑ onChange event in select with knockout: https://stackoverflow.com/questions/43157905/on-change-event-in-select-with-knockout
- ↑ Knockout.js for data binding in HTML and JavaScript: https://sanderrossel.com/knockout-js-for-data-binding-in-html-and-javascript/
- ↑ Simplifying and Cleaning Up Views in KnockoutJS: http://www.knockmeout.net/2011/08/simplifying-and-cleaning-up-views-in.html
- ↑ KnockoutJS binding when source is null/undefined: https://stackoverflow.com/questions/11387501/knockoutjs-binding-when-source-is-null-undefined
- ↑ Creating Clickable Menu List Using Knockoutjs in ASP.Net Application: https://www.c-sharpcorner.com/UploadFile/cd7c2e/creating-clickable-menu-list-using-knockoutjs-in-Asp-Net-app/
- ↑ Make inner HTML of list items clickable in knockoutjs: https://stackoverflow.com/questions/44535160/make-inner-html-of-list-items-clickable-in-knockoutjs
- ↑ Vue.JS -- 2.x: DOCS v2 | EXAMPLES v2
- ↑ Flavio Copes - The Vue.js Cheat Sheet: https://flaviocopes.com/vue-cheat-sheet/
- ↑ VueJS - Quick Guide: https://www.tutorialspoint.com/vuejs/vuejs_quick_guide.htm
- ↑ Vue mastery -- E-Learning course - free cheat sheets: https://www.vuemastery.com/vue-cheat-sheet/
- ↑ ThisDot -- E-Learning course - VUE.js 101/201/Testing: https://labs.thisdot.co/trainings?filter=Vue
- ↑ VUE.js course: https://vuecourse.com/preview/1/2-vue-cli/
- ↑ 1 Hour to Learn Vue - JavaScript Marathon: https://www.youtube.com/watch?v=XItC-JBL3kw | SRC
- ↑ How To Install and Setup Vue.js – A Beginner’s Guide: https://www.thetechieshouse.com/how-to-install-and-setup-vue-js/
- ↑ Vue 3.x installation: https://v3.vuejs.org/guide/installation.html
- ↑ Vue 3.x -- TypeScript Support: https://v3.vuejs.org/guide/typescript-support.html#typescript-support
- ↑ Vue.js quick start if you’re not a frontend developer: https://tryingthings.wordpress.com/2020/06/21/vue-js-if-youre-not-a-frontend-developer/
- ↑ A bird’s eye Vue - how to get started with Vue.js: https://jstutorial.medium.com/a-birds-eye-vue-how-to-get-started-with-vue-js-dd1b82795908
- ↑ 7 Ways To Define A Component Template in VueJS: https://medium.com/js-dojo/7-ways-to-define-a-component-template-in-vuejs-c04e0c72900d
- ↑ VueJS examples: https://vuejsexamples.com/
- ↑ Awesome VueJS examples: https://awesome-vue.js.org/resources/examples.html
- ↑ Gallery of WebApps made with VueJS: https://madewithvuejs.com/
- ↑ 15+ Cool VueJS Examples and Templates: https://www.creative-tim.com/blog/web-design/vuejs-examples/
- ↑ Vue.js examples: https://vuejsexamples.net/examples/
- ↑ Vuejs Form Example: https://vegibit.com/vuejs-form-example/
- ↑ Vue.js Example Apps - A set of example applications using Vue.js: https://github.com/vuejs-example-apps
- ↑ Intro to Vue.js Components with examples: https://reactgo.com/vuejs-components-tutorial/
- ↑ Vue.js - the good, the meh, and the ugly: https://medium.com/@Pier/vue-js-the-good-the-meh-and-the-ugly-82800bbe6684
- ↑ 21 Top Vue.js UI Libraries For Your App: https://hackernoon.com/21-top-vue-js-ui-libraries-for-your-app-4556e5a9060e
- ↑ How To Use Watchers in Vue: https://dzone.com/articles/how-to-use-watchers-in-vue
- ↑ The growth of Vue.js is phenomenal: https://medium.com/@amsterdamjs/fatih-acet-the-growth-of-vue-js-is-phenomenal-5875337c1f6
- ↑ State of VueJS 2018 | Vue.js Amsterdam Conference: https://www.youtube.com/watch?v=TRJMT9yjONQ
- ↑ The Brief Lifespan of a JavaScript Framework: https://www.infoq.com/news/2018/01/javascript-lifespan-limited
- ↑ Has Vue passed React?: https://hasvuepassedreactyet.surge.sh/
- ↑ Vue JS vs React - Pros & Cons: https://www.sencha.com/blog/vue-js-vs-react-pros-and-cons/
- ↑ Github Stars !== Usage: React is still blowing Vue and Angular Away: https://zendev.com/2018/06/19/react-usage-beating-vue-angular.html
- ↑ React.js vs. Vue.js -- A Comparison of Popular JS Frameworks: https://dzone.com/articles/reactjs-vs-vuejs-comparison-of-popular-frameworks
- ↑ Vue.js Is Good, But Is It Better Than Angular Or React?: https://www.valuecoders.com/blog/technology-and-apps/vue-js-comparison-angular-react/
- ↑ ReactJS vs Angular5 vs Vue.js — What to choose in 2018?: https://medium.com/@TechMagic/reactjs-vs-angular5-vs-vue-js-what-to-choose-in-2018-b91e028fa91d
- ↑ Hit The Ground Running With Vue.js & Firestore: https://medium.com/@smashingmag/hit-the-ground-running-with-vue-js-and-firestore-8b45d6a9fa0b
- ↑ VueJS starter: https://repl.it/@templates/VueJS-Starter
- ↑ Vue.js 101 "ToDo app" PWA tutorial: https://medium.com/@vince_umo_34593/vue-js-101-todo-pwa-tutorial-ea96eb4e64b1
- ↑ React.js .vs. Vue.js -- TODO app - with PWA features: https://github.com/nico-martin/todo-pwa
- ↑ MongoDB + Express + Vue.js via Node.js (MEVN) stack -- example CRUD Application: https://bezkoder.com/vue-node-express--mevn-crud/
- ↑ Firebase for user authentication in Vue.js: https://labs.thisdot.co/blog/firebase-for-user-authentication-in-vue-js
- ↑ VueJS -- Components with no content should be self-closing in single-file components, string templates, and JSX - but never in DOM templates: https://vuejs.org/v2/style-guide/#Self-closing-components-strongly-recommended
- ↑ Anyway, here’s how to make AJAX & API calls with Vue JS: https://itnext.io/anyway-heres-how-to-do-ajax-api-calls-with-vue-js-e71e57d5cf12
- ↑ Using Axios to Consume APIs with VueJS: https://vuejs.org/v2/cookbook/using-axios-to-consume-apis.html
- ↑ Vue "axios" AJAX lib -- API call example: https://codepen.io/_elletownsend/pen/RwNzwxQ
- ↑ How To Use an API with Vue.js: https://rapidapi.com/blog/how-to-use-an-api-with-vue-js/
- ↑ Unit .vs. E2E Testing for Vue.js: https://dzone.com/articles/unit-vs-e2e-testing-for-vuejs
- ↑ What's New in Vue (3.x)?: https://dzone.com/articles/whats-new-in-vue (Composition API following "setup" & "use"-prefixed functions rather than standard "data-computed-methods" syntax)
- ↑ Vue 3.0 brings more speed, more TypeScript: https://www.infoworld.com/article/3562408/vue-30-brings-more-speed-more-typescript.html
- ↑ Vue.js Tutorial - Move from Vue 2 to 3 by building a Tesla Battery Range Calculator: https://dzone.com/articles/build-a-tesla-battery-range-calculator-yourself-it
- ↑ 7 Common Vue.js Mistakes You Should Never Make: https://dzone.com/articles/7-common-vuejs-mistakes-you-should-never-make
- ↑ Vue Jukebox: https://github.com/mimicmobile/vue-jukebox (example Vue 2.x components to build a playlist/media-player)
- ↑ ES6 features you can use with Vue now: https://www.vuemastery.com/blog/es6-features-you-can-use-with-vue-now/
- ↑ A bird’s eye Vue - how to get started with Vue.js: https://jstutorial.medium.com/a-birds-eye-vue-how-to-get-started-with-vue-js-dd1b82795908
- ↑ Vue Class Component: https://class-component.vuejs.org
- ↑ Why I use vue-class-component: https://medium.com/haiiro-io/why-i-use-vue-class-component-472579a266b4
- ↑ Node-Sass or Dart-Sass - The CSS Preprocessor Dilemma: https://itnext.io/the-css-preprocessor-dilemma-node-sass-or-dart-sass-32a0a096572
- ↑ BrowserStack docs -- Test Flutter apps: https://www.browserstack.com/docs/app-automate/appium/test-hybrid-apps/test-flutter-apps?utm_source=newsletter&utm_medium=email&utm_campaign=aa_paid
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Single File Components: https://www.vuemastery.com/courses/real-world-vue3/single-file-components/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Advanced Components: https://www.vuemastery.com/courses/progressive-web-apps-vue-3/overview-and-setup/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Component Design Patterns: https://www.vuemastery.com/courses/component-design-patterns/introduction/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Token-Based Authentication: https://www.vuemastery.com/courses/token-based-authentication/intro-to-authentication/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Watch Us Build a Trello Clo: https://www.vuemastery.com/courses/watch-us-build-trello-clone/tour-of-the-app/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Build a Gmail Clone: https://www.vuemastery.com/courses/build-a-gmail-clone-with-vue3/tour-the-project/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Unit Testing: https://www.vuemastery.com/courses/unit-testing-vue-3/what-to-test-vue-3/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Real World Testing: https://www.vuemastery.com/courses/real-world-testing/getting-started/
- ↑ Vue Mastery (E-LEARNING) -- Vue 3 - Deep Dive with (founder) Evan You: https://www.vuemastery.com/courses/vue3-deep-dive-with-evan-you/building-the-reactive-api/
- ↑ What you can do with Ionic Vue: https://www.vuemastery.com/blog/what-you-can-do-with-ionic-vue/
- ↑ Learn How To Create, Test and Deploy a Single Page App with Vue 3 + Vite and Pinia (with Nightwatch e2e Testing): https://labs.pineview.io/learn-how-to-build-test-and-deploy-a-single-page-app-with-vue-3-vite-and-pinia/
- ↑ Building an Apache ECharts Dashboard with Vue 3 & Cube: https://cube.dev/blog/building-an-apache-echarts-dashboard-with-vue-3-and-cube/
- ↑ Vue 3 Reactivity Composition API Using Reactive() And Ref(): https://dzone.com/articles/vue-3-reactivity-composition-api
- ↑ Add React to a Website: https://reactjs.org/docs/add-react-to-a-website.html
- ↑ React.JS -- Handling Events: https://reactjs.org/docs/handling-events.html
- ↑ React Chrome Developer Tools: https://reactjs.org/blog/2014/01/02/react-chrome-developer-tools.html
- ↑ Testing "React Components": https://flaviocopes.com/react-testing-components/
- ↑ ReDedux -- Usage with React.js: http://redux.js.org/docs/basics/UsageWithReact.html
- ↑ Getting Started with Redux: https://egghead.io/courses/getting-started-with-redux
- ↑ How Does Redux Work?: https://blog.usejournal.com/how-does-redux-work-b1cce46d4fa6
- ↑ How I Build JavaScript Apps In 2021: https://timdaub.github.io/2021/01/16/web-principles/
- ↑ React tutorials (by Flavio Copes): https://flaviocopes.com/tags/react/
- ↑ React Lifecycle methods (DIAGRAM): http://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/
- ↑ Load React and ReactDOM are available over a CDN: https://reactjs.org/docs/cdn-links.html
- ↑ "react-scripts" load via UNPKG (CDN): https://unpkg.com/browse/react-scripts@3.2.0/
- ↑ AEM -- React: https://github.com/sinnerschrader/aem-react
- ↑ AEM -- React.js: https://github.com/sinnerschrader/aem-react-js
- ↑ React.js + WebComponents: https://reactjs.org/docs/web-components.html
- ↑ WebComponents -- "custom-elements-es5-adapter.js": https://github.com/webcomponents/webcomponentsjs#custom-elements-es5-adapterjs
- ↑ React - A basic introduction: https://blog.usejournal.com/react-a-basic-introduction-b6ecbca0f550
- ↑ These are the concepts you should know in React.js (after you learn the basics): https://medium.com/free-code-camp/these-are-the-concepts-you-should-know-in-react-js-after-you-learn-the-basics-ee1d2f4b8030
- ↑ Most Popular JavaScript Frameworks 2015 – 2016: http://www.improgrammer.net/most-popular-javascript-frameworks-2015/
- ↑ Hottest freelance skills -- React.js secures Top 5 spot, AngularJS ousted from Top 10 list: https://jaxenter.com/freelance-skills-reactjs-angularjs-138720.html
- ↑ Removing User Interface Complexity, or Why React is Awesome: http://jlongster.com/Removing-User-Interface-Complexity,-or-Why-React-is-Awesome
- ↑ What's so great about React.js?: https://www.reddit.com/r/javascript/comments/2uvz0x/whats_so_great_about_reactjs/
- ↑ React.js vs traditional MVC (Backbone, Angular): http://www.code-experience.com/react-js-vs-traditional-mvc-backbone-ember-angular/
- ↑ What If React Was Really Only The V in MVC?: https://medium.com/javascript-inside/what-if-react-was-really-only-the-v-in-mvc-5854fd6f601c
- ↑ Understanding MVC Architecture with React: https://medium.com/of-all-things-tech-progress/understanding-mvc-architecture-with-react-6cd38e91fefd
- ↑ Knockout.JS .vs. Vue.JS -- To Do List (DEMOS): https://gist.github.com/chrisvfritz/9e5f2d6826af00fcbace7be8f6dccb89
- ↑ Top 10 React Libraries on GitHub: https://hackernoon.com/top-10-react-libraries-on-github-ebf730e7ac25
- ↑ 21 React Example Projects to Learn From (Open-source, Beginner to Intermediate Level): https://dev.to/syakirurahman/21-react-example-projects-to-learn-from-open-source-beginner-intermediate-level-2e6o
- ↑ If you’re a startup, you should not use React (reflecting on the BSD + patents license): https://medium.com/@raulk/if-youre-a-startup-you-should-not-use-react-reflecting-on-the-bsd-patents-license-b049d4a67dd2
- ↑ The React Story -- How Facebook's Instagram Acquisition Led To The Open Sourcing of "React.js": https://stackshare.io/posts/the-react-story
- ↑ Top JavaScript Libraries & Tech to Learn in 2018: https://medium.com/javascript-scene/top-javascript-libraries-tech-to-learn-in-2018-c38028e028e6
- ↑ Create a Basic Like Button in React: https://medium.com/@elle.westervelt/create-a-basic-like-button-in-react-5274a6991385
- ↑ React - How to pass HTML tags in props?: https://stackoverflow.com/questions/33381029/react-how-to-pass-html-tags-in-props
- ↑ How to use `React.createElement` children parameter (without jsx): https://stackoverflow.com/questions/30195720/how-to-use-react-createelement-children-parameter-without-jsx
- ↑ SVG use tag and ReactJS: https://stackoverflow.com/questions/26815738/svg-use-tag-and-reactjs
- ↑ Testing your React App with Puppeteer and Jest: https://blog.bitsrc.io/testing-your-react-app-with-puppeteer-and-jest-c72b3dfcde59
- ↑ React, JSX and ES6 -- The Weird Parts: https://ponyfoo.com/articles/react-jsx-and-es6-the-weird-parts
- ↑ React component patterns: https://medium.com/teamsubchannel/react-component-patterns-e7fb75be7bb0
- ↑ The best way to bind event handlers in React: https://medium.freecodecamp.org/the-best-way-to-bind-event-handlers-in-react-282db2cf1530
- ↑ Consuming REST APIs With React.js : https://dzone.com/articles/consuming-rest-api-with-reactjs
- ↑ How To Fetch Data From an API With React Hooks: https://betterprogramming.pub/how-to-fetch-data-from-an-api-with-react-hooks-9e7202b8afcd
- ↑ Learn the React Context API with a Practical Example You Can Bring to Your Apps: https://itnext.io/understanding-the-react-context-api-through-building-a-shared-snackbar-for-in-app-notifications-6c199446b80c
- ↑ Build a Realtime Serverless GraphQL API with Websockets on AWS: https://hackernoon.com/build-a-realtime-serverless-graphql-api-with-websockets-on-aws-d9e553a997
- ↑ How to build a React.js chat app in 10 minutes: https://medium.freecodecamp.org/how-to-build-a-react-js-chat-app-in-10-minutes-c9233794642b: https://medium.freecodecamp.org/how-to-build-a-react-js-chat-app-in-10-minutes-c9233794642b
- ↑ Build A Chat App With Sentiment Analysis Using Next.js: https://codeburst.io/build-a-chat-app-with-sentiment-analysis-using-next-js-c43ebf3ea643
- ↑ 4 Reasons why you should use React Native for your next Mobile App project: http://valentinfoucault.com/2018/08/20/4-reasons-why-you-should-use-react-native-for-your-next-mobile-app-project/
- ↑ React Hooks: https://reactjs.org/docs/hooks-intro.html
- ↑ Simplify React Apps with React Hooks: https://egghead.io/courses/simplify-react-apps-with-react-hooks
- ↑ Why React Hooks, and how did we even get here?: https://medium.com/free-code-camp/why-react-hooks-and-how-did-we-even-get-here-aa5ed5dc96af
- ↑ React - Timer component: https://codesandbox.io/s/wonderful-ardinghelli-h566b
- ↑ React -- CSS in JS – NationJS: http://blog.vjeux.com/2014/javascript/react-css-in-js-nationjs.html
- ↑ Four ways to style React components: https://codeburst.io/4-four-ways-to-style-react-components-ac6f323da822
- ↑ The unseen performance costs of modern CSS-in-JS libraries in React apps: https://calendar.perfplanet.com/2019/the-unseen-performance-costs-of-css-in-js-in-react-apps/
- ↑ How to build a reusable animation component using React Hooks: https://www.freecodecamp.org/news/animating-visibility-with-css-an-example-of-react-hooks/
- ↑ Props vs. State in React JS: https://blog.cloudboost.io/props-vs-state-in-react-js-9c186dcf39b8
- ↑ How to maintain state after a page refresh in React.js?: https://stackoverflow.com/questions/28314368/how-to-maintain-state-after-a-page-refresh-in-react-js
- ↑ A different way to manage state in React: https://medium.com/hackernoon/a-different-way-to-manage-state-in-react-2d21dfb94482
- ↑ React Redux Starter Kit: https://github.com/mikedevita/react-redux-starter-kit-auth-notifications-example (notifications system & authentication)
- ↑ Adding authentication to your React Flux app: https://auth0.com/blog/adding-authentication-to-your-react-flux-app/
- ↑ react-redux-universal-hot-example: https://github.com/erikras/react-redux-universal-hot-example (starter boilerplate for a universal webapp using express, react, redux, webpack, and react-transform)
- ↑ React -- cookies: https://github.com/reactivestack/cookies (load & save cookies within your React application)
- ↑ React -- persist & rehydrate a redux store: https://github.com/rt2zz/redux-persist
- ↑ React -- querystring parser with nesting support: https://github.com/ljharb/qs
- ↑ React -- session history: https://github.com/ReactTraining/history (manage session history with JavaScript)
- ↑ React -- declarative routing for React: https://reacttraining.com/react-router/
- ↑ React -- hot loader: http://gaearon.github.io/react-hot-loader/
- ↑ How to add React to a simple HTML file: https://medium.com/@to_pe/how-to-add-react-to-a-simple-html-file-a11511c0235f
- ↑ Client on node -- "Uncaught ReferenceError: require is not defined": https://stackoverflow.com/questions/19059580/client-on-node-uncaught-referenceerror-require-is-not-defined
- ↑ Introduction to React Hooks: https://dev.to/christopherkade/introduction-to-react-hooks-1e0l
- ↑ How to fetch data with React Hooks?: https://www.robinwieruch.de/react-hooks-fetch-data
- ↑ 6 Ways to Share React Components in 2020: https://blog.bitsrc.io/6-ways-to-share-and-reuse-react-components-6d80e2fd16cd
- ↑ How to use css modules in "react.js": https://reactgo.com/react-app-css-modules/
- ↑ Create React App CLI tool -- Adding a CSS Modules Stylesheet: https://create-react-app.dev/docs/adding-a-css-modules-stylesheet/
- ↑ Building Reusable React (E-LEARNING COURSE): https://scrimba.com/course/greusablereact
- ↑ The Love-Hate Relationship between React Router and React Components: https://blog.bitsrc.io/the-love-hate-relationship-between-react-router-and-react-components-dee4aac5956c (and a quick "ScrollToTop" hack for loading other routes from a given non-zero scroll state)
- ↑ ReactJS roadmap: https://dev.to/theme_selection/reactjs-roadmap-for-developers-2824
- ↑ ReactJS docs -- Higher-Order Components (HOC): https://reactjs.org/docs/higher-order-components.html
- ↑ Higher Order Components in a React Hooks World: https://medium.com/@albertchu539/higher-order-components-in-a-react-hooks-world-69fe1f0b0791
- ↑ 10 Ways to Optimize Your React App’s Performance: https://blog.bitsrc.io/10-ways-to-optimize-your-react-apps-performance-e5e437c9abce
- ↑ 5 React hooks useful in any project: https://itnext.io/five-react-hooks-useful-in-any-project-44c150f283f8
- ↑ 20 Essential Parts Of Any Large Scale React App: https://javascript.plainenglish.io/20-essential-parts-of-any-large-scale-react-app-ee4bd35436a0
- ↑ I Almost Got Fired for Choosing React in Our Enterprise App: https://betterprogramming.pub/i-almost-got-fired-for-choosing-react-in-our-enterprise-app-846ea840841c | VIDEO
- ↑ Using React in Enterprise Context: https://www.digitalprimates.net/blog/using-react-in-enterprise-contexts-codeitlive/ | VIDEO #1 | VIDEO #2
- ↑ Simply JavaScript -- Testing in JS - straightforward intro to Mocking, Stubbing, and Interfaces: https://medium.com/free-code-camp/simply-javascript-a-straightforward-intro-to-mocking-stubbing-and-interfaces-14e67ed6641a
- ↑ How writing tests can make you a faster and more productive developer: https://medium.com/free-code-camp/how-writing-tests-can-make-you-a-faster-and-more-productive-developer-f3ad978e3872
- ↑ React costs companies a lot of money: https://poub330.medium.com/react-costs-companies-a-lot-of-money-6bfa3e5cc6f4
- ↑ Finally a better React.JS folder structure: https://medium.com/@kumarvinoth/finally-a-better-react-js-folder-structure-821a2210835%7C SRC
- ↑ Cleaner way to write conditionals in JSX: https://tech.trell.co/cleaner-way-to-write-conditionals-in-jsx-b13fb60b5792
- ↑ How to use SWR: https://flaviocopes.com/swr/
- ↑ How to conditionally load data with SWR: https://flaviocopes.com/swr-conditionally-load-data/
- ↑ Microsoft launches React Native for Windows: https://techcrunch.com/2019/05/06/microsoft-launches-react-native-for-windows/
- ↑ Expo SDK v32.0.0 is now available: https://blog.expo.io/expo-sdk-v32-0-0-is-now-available-6b78f92a6c52
- ↑ BuilderX -- ReactNative Design IDE: https://builderx.io/
- ↑ React Native -- How to Setup Your First App: https://hackernoon.com/react-native-how-to-setup-your-first-app-a36c450a8a2f
- ↑ Create a React Native app on an Android emulator: https://charles-stover.medium.com/create-a-react-native-app-on-an-android-emulator-1c0d94f288ae
- ↑ How to build Mobile App with ReactNative: https://medium.com/@fakiho/how-to-build-mobile-app-with-react-native-dd3370755f12
- ↑ Debugging React Native: https://railsware.com/blog/debugging-react-native/
- ↑ You are NOT a React Native noob: https://hackernoon.com/you-are-not-a-react-native-noob-c4309ceccd91 (common React Native gotchas and concepts that will help you before and during development)
- ↑ Fixing React Native WebView’s postMessage for iOS: https://medium.com/@Charles_Stover/fixing-react-native-webviews-postmessage-for-ios-10e2320b2f14
- ↑ Does React Native Surpass Ionic?: https://dzone.com/articles/does-react-native-surpass-ionic (probably a tie or narrow win for Ionic actually)
- ↑ What does React Native use to allow JavaScript to be executed on iOS and Android natively?: https://stackoverflow.com/questions/33479180/what-does-react-native-use-to-allow-javascript-to-be-executed-on-ios-and-android
- ↑ WebView: https://facebook.github.io/react-native/docs/webview.html
- ↑ React Native Load Local HTML File Place Inside App in WebView: https://reactnativecode.com/load-local-html-file-webview-android-ios/
- ↑ Load Local HTML File or URL in React Native using react-native-webview: https://aboutreact.com/load-local-html-file-url-using-react-native-webview/
- ↑ How does React Native work?: https://www.quora.com/How-does-React-Native-work
- ↑ Why Select React Native For Hybrid App Development?: https://www.excellentwebworld.com/react-native-hybrid-app-development/
- ↑ Under The Hood of React Native | Martin Konicek | Reactive 2015: https://www.youtube.com/watch?v=8N4f4h6SThc | SLIDES (took 3 months for iOS then afterwards 3 more months for Android for Facebook team themselves to build Facebook Ads app)
- ↑ How to Build a Mobile App with React Native Components: https://applikeysolutions.com/blog/how-to-build-a-mobile-app-with-react-native-components
- ↑ Writing Cross-Platform Apps with React Native: https://www.infoq.com/articles/react-native-introduction/
- ↑ React Native Internals: https://www.reactnative.guide/3-react-native-internals/3.1-react-native-internals.html
- ↑ Bridging in React Native An in-depth look into React Native's core: https://tadeuzagallo.com/blog/react-native-bridge/
- ↑ Understanding the React Native bridge concept: https://hackernoon.com/understanding-react-native-bridge-concept-e9526066ddb8
- ↑ Biometric Authentication in React-Native Applications: https://dzone.com/articles/incorporate-biometric-authentication-to-your-react
- ↑ Is Facebook iOS app built in React Native?: https://stackoverflow.com/questions/41843974/is-facebook-ios-app-built-in-react-native
- ↑ Does Facebook use React Native for its own apps?: https://www.quora.com/Does-Facebook-use-React-Native-for-its-own-apps
- ↑ Timothy Yung -- Engineering Manager of React Native at Facebook: https://twitter.com/yungsters/status/989361665752748033
- ↑ Facebook moving away from React Native?: https://news.ycombinator.com/item?id=17216628
- ↑ State of React Native 2018: https://facebook.github.io/react-native/blog/2018/06/14/state-of-react-native-2018
- ↑ React Native Open Source Update June 2019: https://facebook.github.io/react-native/blog/2019/06/12/react-native-open-source-update
- ↑ React Native -- What it is and how it works: https://medium.com/we-talk-it/react-native-what-it-is-and-how-it-works-e2182d008f5e
- ↑ React Native vs Real Native Apps: https://codeburst.io/react-native-vs-real-native-apps-ad890986f1f
- ↑ React Native -- Pros & Cons: https://citrusbits.com/react-native-pros-and-cons/
- ↑ NativeScript vs Ionic Framework vs React Native: https://gist.github.com/cipas/fec1e31715092b59621bb214dc1880dc
- ↑ React Native Vs Ionic 2: Comparison: https://medium.com/swlh/react-native-vs-ionic-2-comparison-50aba900be6c
- ↑ Dive into React Native performance: https://code.fb.com/android/dive-into-react-native-performance/
- ↑ AirBnB -- Sunsetting React Native: https://medium.com/airbnb-engineering/sunsetting-react-native-1868ba28e30a
- ↑ React Native vs Ionic -- A Side-by-Side Comparison: https://www.codementor.io/fmcorz/react-native-vs-ionic-du1087rsw
- ↑ Ionic vs. React Native…or May Be Flutter to Build a Mobile App?: https://railsware.com/blog/ionic-vs-react-native-building-a-mobile-app/
- ↑ Ionic Vs. React Native - Which Framework Is Better for Cross-Platform Mobile App Development?: https://dzone.com/articles/ionic-vs-react-native-which-framework-is-better-fo
- ↑ Ionic Framework on the raging debate -- Ionic .vs. ReactNative: https://ionicframework.com/resources/articles/ionic-vs-react-native-a-comparison-guide
- ↑ React Native vs. Ionic Explained -- A Step-by-Step Evaluation: https://codeburst.io/react-native-vs-ionic-explained-a-step-by-step-evaluation-23975999887
- ↑ Should I use React Native?: https://eliezer.medium.com/should-i-use-react-native-edc98303f723
- ↑ Which Is Better For My Startup - Ionic or React Native?: https://expertise.jetruby.com/which-is-better-for-my-startup-ionic-or-react-native-474551b6a7dc
- ↑ What Sucks About React Native: https://shift.infinite.red/what-sucks-about-react-native-c38a307a210f
- ↑ Why I'm not a React Native Developer: https://arielelkin.github.io/articles/why-im-not-a-react-native-developer.html
- ↑ How to use Git with React Native(for Mac users): https://medium.com/react-native-institute/how-to-use-git-with-react-native-687c12431e36
- ↑ Building MobileApps in Ionic-React: https://www.smashingmagazine.com/2019/08/building-mobile-apps-ionic-react/
- ↑ Adding "Notch" (lib for "safe area" detection of "cut-out/bezel-contour" shapes of varied Mobile deviecs) support to your React Native apps -- Android, iOS & Web: https://dev.to/brunolemos/adding-notch-support-to-your-react-native-android-app-3ci3
- ↑ Flexbox layouts and lists with React Native: https://developerlife.com/2017/04/26/flexbox-layouts-and-lists-with-react-native/
- ↑ Get Started With React Native Layouts: https://code.tutsplus.com/tutorials/get-started-with-layouts-in-react-native--cms-27418
- ↑ Netflix app clone in ReactNative: https://github.com/matheusmichels/netflix-clone
- ↑ Cloning Tinder Using React Native Elements and Expo: https://www.sitepoint.com/cloning-tinder-using-react-native-elements-expo/
- ↑ React Native and Forms Redeux: Part 1 | Part 2 | SRC
- ↑ Styling in React Native - Step By Step: https://medium.com/better-programming/styling-in-react-native-step-by-step-540f57411566
- ↑ React Native — How to handle an app with both pre-AndroidX and AndroidX dependencies (RN60): https://itnext.io/react-native-how-to-handle-an-app-with-both-pre-androidx-and-androidx-dependencies-rn60-bf4df7ea0dd2
- ↑ How to configure and code Android in-app purchases in React Native apps: https://medium.com/react-native-training/how-to-configure-and-code-android-in-app-purchases-in-react-native-apps-a46247908862
- ↑ Animated Graph in React Native: https://medium.com/react-native-motion/animated-graph-in-react-native-51354af2bdb0
- ↑ How to Highlight and Multi-Select items in a ReactNative "FlatList" Component: https://medium.com/better-programming/how-to-highlight-and-multi-select-items-in-a-flatlist-component-react-native-1ca416dec4bc
- ↑ How to Generate Haptic Feedback in ReactNative: https://dzone.com/articles/how-to-generate-haptic-feedback-in-react-native
- ↑ How to test SQLite for React Native apps using Jest: https://blog.codemagic.io/testing-local-database-for-react-native/
- ↑ Is Svelte a cut above React ??: https://medium.com/globant/is-svelte-a-cut-above-react-aa1e4f76b170
- ↑ The Philosophy of Svelte: https://blog.scottlogic.com/2021/01/18/philosophy-of-svelte.html
- ↑ Microsoft is Finally Ditching Electron: https://blog.devgenius.io/microsoft-is-finally-ditching-electron-9e081757f9db
- ↑ Video SEO Tutorial – Using SWFObject 2.1 to Provide Alternative HTML Content (Part 2 of 2) : http://www.reelseo.com/swfobject-video-seo-2/
- ↑ Compiling JScript Code from the Command Line: http://msdn.microsoft.com/en-us/library/7435xtz6(v=VS.71).aspx
- ↑ Why Babel Matters: https://codemix.com/blog/why-babel-matters/
- ↑ You might not need to transpile your JavaScript: https://www.freecodecamp.org/news/you-might-not-need-to-transpile-your-javascript-4d5e0a438ca/
- ↑ Is It Time To Say Goodbye To Webpack?: https://javascript.plainenglish.io/time-to-say-goodbye-to-webpack-5bf06ff48823
- ↑ Yeoman official 25-minute tutorial: https://yeoman.io/codelab/index.html
- ↑ WebPack -- Tree Shaking: https://webpack.js.org/guides/tree-shaking/
- ↑ CopyWebpackPlugin: https://webpack.js.org/plugins/copy-webpack-plugin/ | SRC
- ↑ Use webpack with __dirname correctly: https://codeburst.io/use-webpack-with-dirname-correctly-4cad3b265a92
- ↑ WebPack + Mocha -- From 0 to automated testing: https://itnext.io/webpack-from-0-to-automated-testing-4634844d5c3c
- ↑ Visualizing the Size of your Vue/React/Angular Bundles: https://www.mavice.com/blog/visualizing-the-size-of-your-vue-react-angular-bundles/
- ↑ Building With Gulp: http://www.smashingmagazine.com/2014/06/11/building-with-gulp/
- ↑ Webpack — What is it and is it better than Gulp?: https://blog.vanila.io/webpack-what-is-it-and-is-it-better-than-gulp-375db8011d22
- ↑ Gulp vs Grunt vs Webpack -- Comparison of Build Tools / Task Runners: https://da-14.com/blog/gulp-vs-grunt-vs-webpack-comparison-build-tools-task-runners
- ↑ Webpack vs Gulp vs Grunt vs Browserify -- Which tool to use?: https://www.cleveroad.com/blog/gulp-browserify-webpack-grunt
- ↑ Webpack vs Gulp: https://buddy.works/blog/webpack-vs-gulp
- ↑ NPM vs. Bower vs. Browserify vs. Gulp vs. Grunt vs. Webpack: https://stackoverflow.com/questions/35062852/npm-vs-bower-vs-browserify-vs-gulp-vs-grunt-vs-webpack
- ↑ wikipedia: lint (software)
- ↑ Warning! JSLint will hurt your feelings: http://www.jslint.com/lint.html
- ↑ wikipedia:Obfuscated code
- ↑ Hacker Wanted: http://www.webdeveloper.com/forum/showthread.php?t=66136
- ↑ JavaScript Obfuscation tutorial: http://www.mkyong.com/javascript/javascript-obfuscator/
- ↑ Using "Packer" for JS minification/obsfucation/compression: http://joliclic.free.fr/php/javascript-packer/en/
- ↑ JS-Unit intro: http://www.jsunit.net/
- ↑ How I introduced JsDoc into a JavaScript project – and found my Eclipse Outline: http://kajabity.com/2012/02/how-i-introduced-jsdoc-into-a-javascript-project-and-found-my-eclipse-outline/
- ↑ How to get Eclipse to do auto-javadoc comments in Javascript document: https://stackoverflow.com/questions/11961104/how-to-get-eclipse-to-do-auto-javadoc-comments-in-javascript-document
- ↑ Creating JSDoc Comments: https://www.jetbrains.com/help/idea/creating-jsdoc-comments.html
- ↑ JSDoc (old) project home: http://jsdoc.sourceforge.net/
- ↑ Annotating JavaScript for the Closure Compiler: https://github.com/google/closure-compiler/wiki/Annotating-JavaScript-for-the-Closure-Compiler
- ↑ How do you attach JSdoc in Eclipse so that I can have autocomplete for a personal library: https://stackoverflow.com/questions/14986907/how-do-you-attach-jsdoc-in-eclipse-so-that-i-can-have-autocomplete-for-a-persona
- ↑ Oracle Nashorn -- A Next-Generation JavaScript Engine for the JVM: http://www.oracle.com/technetwork/articles/java/jf14-nashorn-2126515.html
- ↑ Nashorn JavaScript engine for JVM could be axed: https://www.infoworld.com/article/3279893/javascript/nashorn-javascript-engine-for-jvm-could-be-axed.html
- ↑ Oracle Proposes Deprecating Java's JavaScript Engine Nashorn: https://www.infoq.com/news/2018/06/deprecate-nashorn
- ↑ JS Editor: http://www.netbeans.org/kb/61/ide/javascript-editor.html
- ↑ Collaborative real-time code editors: http://collaboration.wikia.com/wiki/Collaborative_real-time_editor
- ↑ W3schools -- JS - Prototypes: https://www.w3schools.com/js/js_object_prototypes.asp
- ↑ Minify JS and CSS files in batch with drag-and-drop: http://www.scriptiny.com/2013/01/minify-js-and-css-files-in-batch-with-drag-and-drop/
- ↑ Batch compress all files in a folder with YUI Compressor (Linux/Unix): http://patjack.co.uk/batch-compress-all-files-in-a-folder-with-yui-compressor/
- ↑ 25 JavaScript tricks you should know: https://medium.com/javascript-in-plain-english/25-javascript-code-solutions-utility-tricks-you-need-to-know-about-3023f7ed993e
- ↑ JSLint - The Bad Part: http://webreflection.blogspot.com/2010/02/jslint-bad-part.html
- ↑ Advanced event registration models: http://www.quirksmode.org/js/events_advanced.html
- ↑ JS The Good Parts -- White space railroad diagrams confusing: https://stackoverflow.com/questions/15917859/javascript-the-good-parts-white-space-railroad-diagrams-confusing
- ↑ Google Talk -- JS The Good Parts (Douglas Crockford): https://www.youtube.com/watch?v=hQVTIJBZook
- ↑ wikipedia: Backus–Naur form (BNF diagrams)
- ↑ wikipedia: Syntax diagram
- ↑ You Might Not Need jQuery: http://youmightnotneedjquery.com/
- ↑ JavaScript Without jQuery -- Tips and Practical Examples: http://dzone.com/articles/javascript-without-jquery-tips-and-practical-examp
- ↑ Comparing Scripts in jQuery and JavaScript - with class switching: http://alittlecode.com/comparing-scripts-in-jquery-and-javascript-a-comparison-by-jeffrey-way/
- ↑ You might not need jQuery: http://youmightnotneedjquery.com (guide to how to do common jQuery things in vanilla, modern JS)
- ↑ Do You Really Need jQuery?: https://www.sitepoint.com/do-you-really-need-jquery/
- ↑ Bake Vanilla JavaScript Websites - jQuery (sugar) free: https://aemcorner.com/bake-vanilla-javascript-websites-sugar-free/
- ↑ Are named functions or anonymous functions preferred in JavaScript?: https://stackoverflow.com/questions/10081593/are-named-functions-or-anonymous-functions-preferred-in-javascript
- ↑ How can I convert a string to boolean in JavaScript?: https://stackoverflow.com/questions/263965/how-can-i-convert-a-string-to-boolean-in-javascript
- ↑ How do JavaScript closures work?: https://stackoverflow.com/questions/111102/how-do-javascript-closures-work?rq=1
- ↑ May function declarations appear inside statements in JavaScript?: https://stackoverflow.com/questions/4071292/may-function-declarations-appear-inside-statements-in-javascript
- ↑ Are anonymous functions a bad practice in JavaScript?: https://stackoverflow.com/questions/3462255/are-anonymous-functions-a-bad-practice-in-javascript?noredirect=1&lq=1
- ↑ JavaScript closure inside loops – simple practical example: https://stackoverflow.com/questions/750486/javascript-closure-inside-loops-simple-practical-example?rq=1
- ↑ What does “use strict” do in JavaScript, and what is the reasoning behind it?: https://stackoverflow.com/questions/1335851/what-does-use-strict-do-in-javascript-and-what-is-the-reasoning-behind-it?rq=1
- ↑ Counting with a local variable example: https://www.w3schools.com/js/tryit.asp?filename=tryjs_function_counter3
- ↑ JavaScript Closures: https://www.w3schools.com/js/js_function_closures.asp
- ↑ JavaScript - Closures : http://conceptf1.blogspot.ca/2013/11/javascript-closures.html
- ↑ Advanced JS -- working with functions: javascript.info/advanced-functions
- ↑ Why is this function wrapped in parentheses, followed by parentheses?: https://stackoverflow.com/questions/5815757/why-is-this-function-wrapped-in-parentheses-followed-by-parentheses
- ↑ What is the (function() { } )() construct in JavaScript?: https://stackoverflow.com/questions/8228281/what-is-the-function-construct-in-javascript
- ↑ Awkward way of executing JavaScript code: https://stackoverflow.com/questions/8228281/what-is-the-function-construct-in-javascript
- ↑ Stop writing anonymous functions: https://stijndewitt.com/2013/12/02/stop-writing-anonymous-functions/
- ↑ JavaScript checking for null vs. undefined and difference between == and ===: https://stackoverflow.com/questions/5101948/javascript-checking-for-null-vs-undefined-and-difference-between-and
- ↑ How to check for an undefined or null variable in JavaScript?: https://stackoverflow.com/questions/2559318/how-to-check-for-an-undefined-or-null-variable-in-javascript
- ↑ How we captured AJAX requests from a website tab with a Chrome Extension: https://www.moesif.com/blog/technical/apirequest/How-We-Captured-AJAX-Requests-with-a-Chrome-Extension/
- ↑ Modern example utility function to get all siblings of a DOM Element: https://attacomsian.com/blog/javascript-dom-get-all-siblings-of-an-element
- ↑ Problems with Array.prototype.indexOf.call: https://stackoverflow.com/questions/17167628/problems-with-array-prototype-indexof-call
- ↑ What is the difference between JavaScript and ECMAScript?: https://stackoverflow.com/questions/912479/what-is-the-difference-between-javascript-and-ecmascript
- ↑ What are the differences between JavaScript, EMCAScript, CoffeeScript and TypeScript?: https://www.quora.com/What-are-the-differences-between-JavaScript-EMCAScript-CoffeeScript-and-TypeScript
- ↑ Introducing the OpenJS Foundation -- The Next Phase of JavaScript Ecosystem Growth: https://medium.com/@nodejs/introducing-the-openjs-foundation-the-next-phase-of-javascript-ecosystem-growth-d4911b42664f
- ↑ What is Typescript & EcmaScript: https://steemit.com/javascript/@scaevola/what-is-typescript-and-ecmascript
- ↑ Microsoft's TypeScript 1.5 falls in line with ECMAScript: https://www.infoworld.com/article/2950535/javascript/microsofts-typescript-15-falls-in-line-with-ecmascript.html
- ↑ TypeScript Gets Closer To ECMAScript: https://visualstudiomagazine.com/articles/2017/04/11/typescript-23-ecmascript-support.aspx
- ↑ TypeScript Practical Introduction: https://auth0.com/blog/typescript-practical-introduction/
- ↑ AtScript -- Google’s new superset JavaScript runtime: http://sdtimes.com/atscript-googles-new-superset-javascript-runtime/
- ↑ What is the difference between document.location.href and document.location?: https://stackoverflow.com/questions/2652816/what-is-the-difference-between-document-location-href-and-document-location
- ↑ Setting location.href versus location: https://stackoverflow.com/questions/2383401/javascript-setting-location-href-versus-location
- ↑ window.location vs. document.location: https://ask.roboflow.ai/question/7857878
- ↑ JavaScript Window Location: https://www.tutorialrepublic.com/javascript-tutorial/javascript-window-location.php
- ↑ A Complete Guide to the document.location Property and Location Object in JavaScript: https://levelup.gitconnected.com/introducing-the-javascript-window-object-location-property-introduction-44492019680d
- ↑ How To Replace All Occurrences Of A Word In A JavaScript String?: https://www.designcise.com/web/tutorial/how-to-replace-all-occurrences-of-a-word-in-a-javascript-string
- ↑ Mutation Events; https://developer.mozilla.org/en-US/docs/Web/Guide/Events/Mutation_events
- ↑ How to get bootstrap modal size: http://stackoverflow.com/questions/28198035/how-to-get-bootstrap-modal-size
- ↑ Set div height equal to screen size: http://stackoverflow.com/questions/12172177/set-div-height-equal-to-screen-size
- ↑ window object, a slightly less evil alternative to eval(): http://fiddle.jshell.net/Shaz/WmA8t/
- ↑ Vapor.JS project: https://web.archive.org/web/20120322223910/http://www.vaporjs.com/
- ↑ Vapor.js - A new JavaScript framework from the author of script.aculo.us: http://news.ycombinator.com/item?id=1728645
- ↑ Facebook Refuses to Alter React's Open Source License: https://www.infoq.com/news/2017/08/facebook-react-license
- ↑ Explaining React's license: https://code.facebook.com/posts/112130496157735/explaining-react-s-license/
- ↑ Facebook re-licenses React under MIT license after developer backlash: https://thenextweb.com/dd/2017/09/25/facebook-re-licenses-react-mit-license-developer-backlash/
- ↑ Outraged programmers forced a rare concession from Facebook on its open-source software: https://qz.com/1087865/outraged-programmers-stood-up-to-facebook-fb-over-open-source-licensing-and-won-sort-of/
- ↑ Facebook performs successful license surgery on React, GraphQL: https://www.theregister.co.u/2017/09/26/facebook_license_surgery_on_react/
- ↑ Facebook won't change React.js license despite Apache developer pain: https://www.theregister.co.uk/2017/08/21/facebook_apache_openbsd_plus_license_dispute/