基础数据类型
- Undefined
- Null
- Boolean
- Number
- String
引用数据类型
引用类型的值保存在内存中,所以不能直接操作实际对象,只能操作对象的引用
- 添加属性时则直接操作对象
- 复制保存对象的变量时,操作对象的引用
- 不能给基本类型添加属性,调用该属性时,不会报错,会报undefined
传递参数
-
所有参数的传递都是值传递
-
值复制到arguments数组
-
引用类型的属性对应的值传递到函数中,仅仅拥有相同的值
-
如果传递的值为对象Object,函数内部的obj与函数外部的obj,指向堆内存中的同一个对象,也为值传递
function setName(obj){ var obj = {} obj.name = 'obj'; } var p = { name:'p' }; setName(p); console.log(p.name);//p
所有引用类型的值都是Object的示例
在Web浏览器中,全局执行环境被认为是window环境
- 全局执行环境在浏览器窗口关闭时才被销毁
- 内部环境可以通过作用域链(scope chain)访问外部环境的变量
网友评论