对象在js中被称为引用类型的值,而且有一些内置的引用类型可以用来创建特定的对象:
一、引用类型
1.Object
创建Object实例的方法:
- new+构造函数
var person = new Object();//var person = {};
- 对象字面量表示法:
var person = {
name: "Bob",
age: 21
};
2.Array
- 创建实例:构造函数(new可省略)\数组字面量
- 检测数组:Array.isArray()
- 属性:length
- 方法
- 转换方法:toLocaleString(),toString(),valueOf(),join()
- 栈方法:push(),pop()
- 队列方法:shift()+push(),逆队列:unshift()+pop()
- 重排序方法:reverse(),sort()(可接受比较函数实现升序降序排序)
- 操作方法:concat(),slice(),splice()
- 位置方法:indexOf(),lastIndexOf()
- 迭代方法:every(),filter(),forEach(),map(),some()
- 归并方法:reduce(),reduceRight()
3.Date
没仔细看
4.RegExp
也没仔细看
5.Function
函数名实际上是一个指向函数对象的指针(所以没有重载)
- 函数定义:
- 函数声明语法
- 函数表达式
- Function构造函数,不推荐
- 函数可以作为参数传给另一个函数,也可以作为另一个函数的结果返回
- 函数内部的两个特殊对象arguments和this:
- arguments是类数组对象,arguments.length由传入参数个数决定
- arguments.callee指向拥有这个对象的函数
- this引用的是函数执行的环境对象
- 函数对象的属性caller保存着调用当前函数的函数的引用
- 函数属性
- length:表示函数希望接收的命名参数的个数
- prototype:第6章详细
- 函数方法
- apply()
- call()
- bind()
二、基本包装类型
- 为了便于操作基本类型值,提供了3个特殊的引用类型:Boolean、Number、String
每当读取一个基本类型值的时候,后台就会创建一个对应的基本包装类型的对象,从而让我们能够调用一些方法来操作这些数据。
引用类型与基本包装类型的主要区别就是对象的生存期
1.Boolean
建议永远不要用Boolean对象2.Number
除了继承的方法还有:toFixed()
toExponential()
toPrecision()
3.String
字符方法:charAt(),charCodeAt()
字符串操作方法:concat(),slice(),substr(),substring()
字符串位置方法:indexOf(),lastIndexOf()
trim()消除前置后缀空格
字符串大小写转换方法:
toUpperCase(),toLocaleUpperCase(),toLowerCase(),toLocaleLowerCase()字符串的模式匹配方法:
match(),search(),replace(),split(),localeCompare(),fromCharCode()
三、单体内置对象
- 1.Global
终极的”兜底儿对象“
方法:eval()
属性:undefined,NaN,引用类型等等 - 2.window
Web浏览器将Global这个全局对象作为window对象的一部分加以实现。 - 3.Math
各种各样的属性和方法