WEB开发网
开发学院网页设计JavaScript 面向对象的编程思想在javascript中的运用(上) 阅读

面向对象的编程思想在javascript中的运用(上)

 2009-11-26 00:00:00 来源:WEB开发网   
核心提示: 运行后我们可以看到弹出一个对话框,显示出这个叫张三的人的信息:我们还可以看看对象的constructor属性来看看zhangsan的构造函数是不是我们定义好的Person:alert(zhangsan.constructor);结果如图:图片看不清楚?请点击这里查看原图(大图),面向对象的编程思

运行后我们可以看到弹出一个对话框,显示出这个叫张三的人的信息:

面向对象的编程思想在javascript中的运用(上)

我们还可以看看对象的constructor属性来看看zhangsan的构造函数是不是我们定义好的Person:

alert(zhangsan.constructor);

结果如图:

面向对象的编程思想在javascript中的运用(上)

图片看不清楚?请点击这里查看原图(大图)。

可以看到,正是我们的Person构造函数。

不过,这里还是有点问题,每一次我们构造一个对象,都会在内存中为属性和方法分配内存空间,而事实上,所有的对象完全可以用同一个方法,并不需要有多个方法的副本,这样有些浪费内存空间。既然意识到了这个问题,让我们来想想如何解决吧。一个很自然的想法是,既然我们只想为方法分配一次内存空间,那么我们可以设置一个值用来标识方法的内存空间是否已经分配,按照这个思路,我们将构造函数做如下修改:

function Person(name, sex, age) {
            this.name = name;
            this.sex = sex;
            this.age = age;
            if (typeof Person._initialized == "undefined") {
                this.showInfo = function() {
                    alert("姓名:" + this.name + " 性别:" + this.sex + " 年龄:" + this.age);
                }
                Person._initialized = true;
            }
        }

编缉推荐阅读以下文章

  • 暂无相关文章

上一页  1 2 3 4  下一页

Tags:面向 对象 编程

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接