javascript核心
两个作用域
- 全局作用域
闭包作用域
for(var i = 1;i < 100;i++); i逃逸到全局作用域中 console.log(i); //100
两条原型链
- <function>.prototype
- <object>.constructor
两个上下文
- 定义上下文
执行上下文
(function(){ var callbacks = []; for(var i = 1;i < 100;i++){ callbacks.push(function(){ console.log(i) }); } callbacks.forEach(function(e){ e.apply() }); })()
两套类型系统
- 基本类型系统空的概念用 undefined 表示
对象类型系统空的概念用 null 表示
var str = "" typeof str === 'string' //true str instanceof String // false
两个核心概念
- 闭包就是携带部分上下文的函数对象
- 内部函数中的变量优先在闭包中执行变量查找,然后上一次…
- 上下文对象就是函数执行的环境
- 当前上下文为this
- 浏览器全局上下文为windows
- nodejs全局上下文为global
- 闭包就是携带部分上下文的函数对象