本节书摘来自异步社区《JavaScript专家编程》一书中的第1章,第1.3节,作者:【美】Mark Daggett(达格特)著,更多章节内容可以访问云栖社区“异步社区”公众号查看
1.3 小结
- 对象是持有零个或多个属性的包。
- 对象的属性要么是基本类型,要么是复杂类型。对象可以持有它们自己的基本类型的拷贝,但仅能持有复杂类型的引用。出于这个原因,JavaScript的属性要么传引用,要么传值。
- 对象的属性可以有标记符,可以在修改对象时,控制对象的行为和能力。
- 对象可以通过以下三种方式之一创建。
- 使用字面量语法‘{}’。
- 联合使用new运算符和构造函数,例如‘new Foo()’。
- 使用内置的Object.create()函数。
- JavaScript是一种基于原型的语言,对象通过原型链彼此相连。
- 当对象检视属性时,它会查询原型链的每一环,直到返回所需的值或者undefined。
- 当一个原型链的对象设置一个原型链上已经存在属性时,原型的属性不会改变;取而代之的是,属性会被定义到当前对象上,不能访问远端的原型属性。
- JavaScript没有正式的类机制;所有看起来像类一样的代码的使用都是一种惯例,并不是语言的特性。
- JavaScript使用差分继承的方式,意味着需要继承的部分要比使用抽象的类少很多。
- JavaScript是一种面向对象的语言,但是这并不妨碍你使用其他编程范式编写JavaScript。