在 JavaScript 中万物皆对象,比如:字符串、数组、日期等等。但是 JavaScript 又不是一种真正的面向对象编程(OO)语言,因为 ECMAScript(ES6之前) 中没有类的概念,因此它的对象也与基于类的语言中的对象有所不同。
ECMA-262 把对象定义为:“无序属性的集合,其属性可以包含基本值、对象或者函数。”大白话来讲就是:“对象就是拥有属性和方法的数据”。
例:函数对象
Javascript 提供了一个构造函数(Constructor)模式。所谓的构造函数就是一个普通函数,内部使用了 this,直接将属性和方法赋给了 this 对象,对构造函数使用 new 运算符,就能生成实例,并且 this 变量会绑定在实例对象上。首字母要大写为了区分普通函数和构造函数