Right now, I'm just hosting a few notes & diagrams here.
Source: https://jupyter.readthedocs.io/en/latest/architecture/how_jupyter_ipython_work.html
https://coggle.it/diagram/XaYGjeAbJffXLuIV/t/-
- " or ' 🤷
function sum() {
var sum = 0;
for(var i = 0; i < arguments.length; i++) {
sum += arguments[i];
}
return sum;
}
sum(1, 2, 3, 4); // -> 10
- false == false
- null == false
- undefined == false
- 0 == false
- '' == false
- person.undefinedProperty == false
This is useful in assignment statements.
person.meetup = person.meetup || defaults.meetup || 'YYCJS';
- Abstract (double): checks if VALUES are equal
- Strict (triple): checks if VALUES and TYPES are equal Note: Objects are always compared by their reference. https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness#A_model_for_understanding_equality_comparisons
- var: Allows function scope. All else is global.
- let: Allows block scope.
- cost: Allows block scope. Cannot be changed at runtime.
- (without var/let/cost):
- Browser: Global scope, added to 'window' object
- Node: Global scope, within a module