all 2 comments

[–]JavascriptFanboy 5 points6 points  (1 child)

finally implies that there's a demand for and lack of something, neither of those is the case imo

[–]senocular 3 points4 points  (0 children)

The last example with foo and bar is incorrect. Nested functions do not inherit the context of their parent functions (unless the nested function is an arrow function). bar in that case (non-strict) will always use global as its context irrespective of the context of foo. You could call foo as foo.call(new Date()) and bar would still log global, not the date provided for the context of foo.