JS封装类或对象示例

<!DOCTYPE html>

<html lang="en" xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta charset="utf-8" />
    <title>JS封装类或对象</title>
    <script>
        var Person = (function () {
            //静态私有属性方法
            var _place = "shen zhen";
            function _say(name) {
                console.log(name + " is live in " + _place);
            }
            function _walk() {
                console.log("i am walking");
            }


            //构造函数
            function _person(name, age) {
                var _this = this;
                //构造函数安全模式,避免创建时候丢掉new关键字
                if (_this instanceof _person) {
                    //共有属性, 方法
                    _this.place = _place;
                    _this.say = function () {
                        _say(name)
                    }
                    _this.walk = _walk;
                    _this.age = age + 12;

                } else {
                    return new _person(name, age);
                }
            }
            return _person;
        })();

        var p1 = new Person("zhangsan", 12);
        p1.say();                   //zhangsan is live in shen zhen
        console.log(p1.age);        //24
        p1.walk();                  //i am walking
        console.log(p1.place)       //shen zhen
    </script>
</head>
<body>

</body>
</html>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

smartsmile2012

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值