This is a list of web pages with short notes or descriptions used while preparing the submission for Udacity Front End Developer Nanodegree, Project 2. (For a thorough journal of links, questions, answers, thoughts and notes made during the course see js-basics-reflections.html and jquery-reflections.html)
-
Git docs
Added to Git session -
Git cheat sheet
Added to Git session. -
Git interactive cheat sheet
Added to Git session. TODO: Add extras to Anki later -
WWWC CSS docs
Added to MTNL & CSS session -
Chrome devtools docs 1
-
Chrome devtools docs 2
Added to Read Later -
jQuery docs
Read as needed, added JavaScript session -
JavaScript String Methods
Read as needed, added main methods page to JavaScript session -
JavaScript Comparing Truthy and Falsey
Nice article, examples added to Anki -
Comparison of Dot and Bracket Notation
The example in the lesson (added to Anki cards) was more help, but this article does note the extra bit that crude expressions can be included when using square brackets. -
Validate the JSON
Added to JavaScript session -
JSON info
For future reference -
DOM Intro page
Looks like a better place to start than the reference page below. Add to read it later. -
MDN DOM reference page
Read as needed, added JavaScript session -
MDN HTML Element interface, all the Properties
Read as needed, added JavaScript session -
MDN CSS Property Reference in JavaScript
Read as needed, added JavaScript session -
Regular Expressions on MDN, uh oh
Nagonna avoid these forever. Read as needed, added to JavaScript session. TODO: Learn Regex the hard way -
ToddMotto: All about Scope
Excellent explanations, need to keep on reference for the other stuff that I haven't encountered yet. (Couple of hairy bits in the middle, but gets better again towards the end.)
Nice example of how to create module with public methods, but is namespaced (see Public and Private methods) Revisit regularly. -
Scope and 'hoisting'
Seems to be the origin of discussion on hoisting, looks clearly written. Nice example:function test() { foo(); // TypeError "foo is not a function" bar(); // "this will run!" var foo = function () { // function operator assigns to return statement of local variable 'foo' alert("this won't run!"); } function bar() { // function declaration, given the name 'bar' alert("this will run!"); } } test();
-
Git Troubleshooters Flowchart
Could come in handy. -
'loc' clarification on Udacity forums
This is what I needed, only place I could find it, might need again. -
Google Maps Docs, JavaScript tutorial
As usual with Google docs, it looks a bit crap, but since one of the final projects is about mapping.... Hmmm, a video tutorial, something like lynda.com, might be a quicker way of seeing what's available. In truth, you don't see Google Maps being used for much more that Google Maps... -
THE Data visualization for JavaScript library
This is 'the big one' for data vis. Looks complex, but could be great. -
Anonymous Functions # JavaScript on Wikipedia
So(function(){}())
and(function(){})()
, are pretty much the same thing - anonymous functions that get executed immediately. They are almost the same as:var f = function(){}; f();
After that, it's gets a bit silly. -
Helefant on Anonymous functions
var something = function() { //some code; };
Is actually an anonymous function assigned directly to the return value of the variable, I never noticed this before! Note: this is also the difference between creating a function with the function declaration and with a function operator in an expression.
Expressions are created at runtime, declarations run before any other code is executed. Revisit this when looking at recursive functions, it builds to a nice example.
When you give an function in an expression a name, it still only gets created at runtime - therefore giving them names can really help with debugging as all anonymous functions can look the same.
Note: that Helefant's series on objects culminates in the pseudoclassical pattern that the Simon Cowell guy warns exactly against as out of date and incorrect in P3.
-
Function are Objects, Making library functions
Nice example of making library functions, review in 2 weeks -
MDN Using dates in JS
Did this because the guideline suggest using an Integer to represent dates in the education object, but I suspect that's error, although it was a good exercise to do it this way. -
Udacity Nanodegree P2 Office Hours notes
This let me get a better understanding of 'encapsulation'. That is, it an object's property method is still encapsulated even if it is not written inside the JSON, which is much neater and will allow the JSON to validate. -
A Drip of JavaScript, the problem with for-in...
Founds a link to explain, with examples, what's wrong with a for-in loop with arrays.