JavaScript变量可以用来保存两种类型的值:基本类型值和引用类型值。
基本类型值源于以下5种基本类型:
Undefined、Null、Boolean、Number和 String。
*引用类型包括:
*Object类型 *Array类型 *Date类型 *RegExp类型 *Function类型
*基本包装类型:Boolean类型、Number类型和String类型
*单体内置对象:Global对象、Math对象。
基本类型值和引用类型值有以下特点:
·基本类型值在内存中占用固定大小的空间,因此被保存在栈内存中;从一个变量向另一个变量。
明:函数是对象,因此函数也有属性和方法。
$:函数包含两个属性length和prototype;
·length属性表示函数希望接受的命名参数的个数(形参的个数);
·prototype是保存它们所有实例方法的真正所在。在创建自定义引用类型以及实现继承时,
prototype属性的作用是极为重要的。
$:每个函数都包含两个非继承而来的方法:apply()和call();
·这两个方法的用途都是在特定的作用域调用函数,实际上等于设置函数体内this对象的值。
·apply()方法接受两个参数:一个是在其中运行函数的作用域,另一个是数组。
数据类型
- ECMAScript变量包含两种不同类型的值:基本类型值、引用类型值;
- 基本类型值:指的是保存在栈内存中的简单数据段;
- 引用类型值:指的是那些保存在堆内存中的对象,意思是,变量中保存的实际上只是一个指针,这个指针指向内存堆中实际的值;
两种访问方式
-
基本类型值:按值访问,操作的是他们实际保存的值;
-
引用类型值:按引用访问,当查询时,我们需要先从栈中读取内存地址,然后再顺藤摸瓜地找到保存在堆内存中的值;
image二、
数组的length属性数组的length属性的特点:不是只读的。也就是说通过设置这个属性,可以从数组的末尾移除或向数组中添加新项。
三、
数组的方法(重点)
* 检测数组(使用instanceof操作符)
网友评论