Skip to content

Instantly share code, notes, and snippets.

@khamiltonuk
Created March 22, 2014 20:10
Show Gist options
  • Select an option

  • Save khamiltonuk/9713469 to your computer and use it in GitHub Desktop.

Select an option

Save khamiltonuk/9713469 to your computer and use it in GitHub Desktop.
JavaScript has function scope only
javascript is compiled
tokens/lexing?
declarations are compiled
implicit declation argument
start using strict mode, es6 ***NEW RULE***
always name your function
so you canc call the function within its self, purpose of recusion
arguements.calle
creates self documenting code
stack traces, makes it more debuggable
excuse, uncreative lazy ***NEW RULE***
eval cheats lexical scope, generate code on the fly, compiler cant optimise
IIFE
(function(){
//statement
})();
copy or referance
tracer , start using es6, transpiler benifit of more maintainable code
bloke scope
undeclares and undefined
undeclare unfullfilled
undefined, emtpy
multurecursion
implicit and default binding of this
explicit binding
brand new object is created out of thin air
that object gets linked to some other object*
that newly created object is not the this binding
baz.baz()
1. new keyword overides explicit calls
2. was th function called with call or apply specifing an explict this
3. Was the function called via a contianing/owning object(context)
4. Default: global object(except strict mode)
Closure
module patern
doesnt have to be an iify,
that function when called, needs to return a value, that has one function retune back a public api
es6 module pattern
import export
Browserify
Chicken soup
oloo
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment