函数被原型下定义之后,创建对象时内存只保持一个函数,那么对象的属性是被单独保存的吗(创建n个对象

<script>
function CreatePerson(name){

this.name = name;//函数被原型下定义之后,创建对象时内存只保持一个函数,那么对象的属性是被单独保存的吗(创建n个对象,内存中就有n个属性的值?)

}
CreatePerson.prototype.showName = function(){
alert( this.name );
};

var p1 = new CreatePerson('小明');
//p1.showName();
var p2 = new CreatePerson('小强');
//p2.showName();

alert( p1.showName == p2.showName ); //true

var arr = new Array();
var date = new Date();

</script>


POPMUISE
浏览 463回答 2
2回答

慕田峪7331174

准确的说法是 对象实例 是被单独保存的,即创建n个对象实例,内存中就有n个相互隔离的区域来分别保存每个对象实例。当然每个对象实例的具体属性也保存在对应的区域中。而对象方法可以认为是一种特殊的函数,只有一份,以引用的方式让所有该类对象共享使用。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript