1、使用函数创建自定义对象
<script type = "text/javascript">
function createPerson1(firstName, lastName){
return{
firstName: firstName,
lastName: lastName,
getFullName: function(){
return this.firstName + " " + this.lastName;
}
greet: function(person){
alert("Hello " + person.getFullName() + ". I am " + this.getFullName());
}
};
}
function createPerson2(firstName, lastName){
var person = {
firstName: firstName,
lastName: lastName ,
getFullName: function(){
return this.firstName + " " + this.lastName;
},
greet : function(person){
alert("Hello, " + person.getFullName() + ".I am " + this.getFullName());
}
};
return person;
}
var johnDoe = createPerson1("John", "Doe");
var janeDoe = createPerson1("jane", "Doe");
johnDoe.greet(janeDoe);
</script>
2、创建实际的Person对象,可以带上 .prototype 定义属性
<script type="text/javascript">
function Person(firstName, lastName){
this.firstName = firstName;
this.lastName = lastName;
}
Person.prototype.getFullName = function(){
return this.firstName + " " + this.lastName;
};
Person.prototype.greet = function(person){
alert("Hello " + person.getFullName() + ". I am " + this.getFullName());
};
var linpan = new Person("lin", "pan");
var linhuang = new Person("lin", "huang");
linpan.greet(linhuang);
</script>