/**
* 为了解决原型所带来的问题,此处需要通过构造函数和原型来实现对象的创建
* 将属性在构造函数中定义,将方法在原型中定义。
* 这种有效的集合了两者的优点,是最为常见的方式。
*/
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+ "]");
}
}
// 此时所有的属性都市保存在自己的空间中的
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 发布