JS高级程序设计知识点记录(二)

for-in 语句
作用:枚举对象的属性

  for (var propName in window) {
        document.write(propName + "
"); }

函数参数:

参数保存在一个数组中,当参数传递时,函数接受到的始终都是这个数组。在函数体内,可以通过arguments对象来访问这个参数数组,从而获取传递给函数的每一个参数。
arguments对象不是Array的实例,而是类数组。
可通过length()方法来查询传递的参数的个数。

变量:
在将一个值赋给变量时,解析器必须确定这个值是基本类性值还是引用类型值。
Undefined、Null、Boolean、Number、String 这五种基本数据类型是按值访问的,所以他们的传递方式是值传递。可以操作保存在变量中的实际的值。(存放在栈内存中,复制时,重新开辟内存空间,互不影响)
引用类型的值是保存在内存中的对象。js不允许直接访问内存中的位置,即,不能直接操作对象的内存空间。在操作对象时,实际上是在操作对象的引用而不是实际的对象。
所以,引用类型的值是按引用传递的。
注:定义了一个对象,其实就是在栈内存中存储了一个指针,该指针指向堆内存中该对象的存储地址。
(存放在堆内存中,复制时,复制栈中的指针,相互影响)。
引用类型值可以添加属性和方法,也可以改变和删除其属性和方法。

你可能感兴趣的:(JS高级程序设计知识点记录(二))