Javascript对象的私有属性

大家都知道Javascript函数对象的所有属性都是公开的,是没有私有属性这一个概念的.但是,不要忘记了Javascript的两大特性(原型和闭包).说到这里,可能很多朋友已经知道怎么样实现私有属性了.没错,我们就是要通过Javascript的闭包来实现.
概念性的东西可能比较难理解,我们还是以实例来说明:

 
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <title></title>
    <script type="text/javascript">
        function dw(s) {
            document.write(s + "<br />");
        }
        function PoliceMan() {
            var m_lifeEnergy = 100;
            this.getLifeEnergy = function () {
                return m_lifeEnergy;
            }
            this.Shot = function () {
                m_lifeEnergy -= 1;
            }
        }
        //创建一个警察
        var pm = new PoliceMan();
        //显示当前生命值
        dw(pm.getLifeEnergy());
        //中枪生命值减1
        pm.Shot();
        //显示当前生命值
        dw(pm.getLifeEnergy());
    </script>
</head>
<body>

查看运行结果请点击以下链接:
http://extjs.org.cn/javascript/private_property.html

作者:肥占
出处:http://extjs.org.cn
本文版权归作者和ExtJs中文资讯站共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接。