<script>
/**
* 为了让定义的方式更加符合java的需求,就把定义方法的原型代码放置到Person这个构造函数中
*/
function Person(name, age, friends) {
// 属性在构造函数中定义
this.name = name;
this.age = age;
this.friends = friends;
// 不能使用重写的方式定义
// Person.prototype = {
// constructor:Person,
// say:function (){
// alert(this.name + "[" +this.friends+ "]");
// }
// }
if (!Person.prototype.say) {
Person.prototype.say = function () {
alert(this.name + "[" + this.friends + "]");
}
}
}
// 此时所有的属性都市保存在自己的空间中的
var p1 = new Person("Jack", 23, ["Ann", "Mike"]);
p1.name = "John";
p1.friends.push("Nill");
p1.say();
var p2 = new Person("Ada", 34, ["lili"]);
p2.say();
</script>
JavaScript动态混合模式创建对象
最新推荐文章于 2022-02-26 09:54:07 发布