原型,对象,构造函数,“this”,函数

时间:2011-06-24 07:04:58

标签: javascript function object constructor

怎么做

  • 原型
  • 物体
  • 构造
  • “这个”
  • 功能

在JS中相互关联(以及它们到底是什么;构造函数是一个函数,对象,原型,“这个”)?

有人可以澄清一下吗?我知道它们各自是什么以及它们是如何工作的,但不是一个明确的。

我认为理解出现的问题会更容易,例如:“a.constructora.prototype.constructor相同”,如果知道这些是什么。

1 个答案:

答案 0 :(得分:2)

Object - 名称 - 值对的集合,例如:

var someObject = {
    aName: "aValue",
    name2: "value2"
}

构造函数 - “创建”对象的函数,例如:

function someObject(someParam) {
    this.someParam = someParam;
    this.getSomeParam = function() {
         return this.someParam;
    }
}

Prototype - 一种特殊类型的对象,其他对象从该对象继承属性。每个对象都有一个原型。您可以使用它们将方法添加到对象的所有实例,例如:

String.prototype.doSomething = function() {
    //Do something with a String
}

现在您已在doSomething原型上定义了String方法,所有String个对象都可以使用它:

var myString = "Hello";
myString.doSomething();

有关JavaScript语言及其工作原理的更多信息,建议您查看ECMAScript spec,或者稍微轻松一些,请阅读this