一個函數可以看成一個類,原型是所有類都有的一個屬性,原型的作用就是給這個類的每一個對象都添加一個統一的方法
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>Document</title>
<script>
//聲明一個類
function Person(name,age)
{
this.name=name;
this.age=age;
}
//使用原型給類添加方法
Person.prototype.show=function()
{
alert("我叫"+this.name+",今年"+this.age);
}
//建立兩個對象
var person1 =new Person('張三',);
var person2 =new Person('李四',);
//調用原型裡面的方法
person1.show();
person2.show();
</script>
</head>
<body>
</body>
</html>
疑問
直接用Person.show=function(){alert(“”)} 那麼下面兩個person1和person2不也有show()這個方法嗎
答曰:
這樣寫的話是不能person1.show()這樣調用的,隻能Person.show()這樣調用,這個就像其他面向對象的語言中的類的靜态方法那樣。