欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

對象創(chuàng)建的幾種方式

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <title></title>
    </head>
    <body>
        <script type="text/javascript">
            // 1    {}
            var a = {};
            a.name = "john";
            a.age = 22;
            a.sayHello = function(){
                console.log(this.name);
            }
            a.sayHello();
            console.log(a.name + "," + a.age);

            // 2    new Object()
            var b = new Object();
            b.name = "jx";
            b.age = 21;
            b.sayHello = function(){
                console.log(this.name + "," + this.age);
            }
            b.sayHello();
            console.log(typeof b)
            console.log(b instanceof Object)

            // 3    字面量
            var person = {
                name:"pd",
                age:20,
                sayHello:function(){
                    console.log(this.name + "," + this.age);
                }
            }
            person.sayHello();
            console.log(typeof person);

            // 4    工廠模式
            function obj(name,age){
                var a = new Object;
                a.name = name;
                a.age = age;
                a.sayHello = function(){
                    console.log(this.name + "," + this.age)
                }
                return a
            }

            var a1 = obj("nv",25);
            var a2 = obj("sd",28);
            a1.sayHello();
            a2.sayHello();

            //  5   構(gòu)造函數(shù)創(chuàng)建
            function Person(name,age){
                this.name = name;
                this.age = age;
                this.sayHello = function(){
                    console.log(this.name + "," + this.age);
                }
            }
            var person2 = new Person("mv",29);
            var person3 = new Person("be",30);

            person2.sayHello();
            person3.sayHello();
            console.log(typeof person2,typeof person3);
            console.log(person2.sayHello === person3.sayHello)
            // 沒解決方法共享問題

            //  6   原型模式創(chuàng)建
            function Animal(){};
            Animal.prototype.name = "sdf";
            Animal.prototype.age = 23;
            Animal.prototype.sayHello = function(){
                console.log(this.name + "," + this.age);
            }
            var animal1 = new Animal();
            var animal2 = new Animal();

            animal2.name = "bsdb"

            animal1.sayHello();
            animal2.sayHello();

            console.log(typeof animal1,typeof animal2);
            console.log(animal1.sayHello === animal2.sayHello);

            //  6-1     原型模式2
            function Animal1(){};
            Animal1.prototype = {
                name:"sadf",
                friends:['car','dog'],
                age:56,
                sayHello:function(){
                    console.log(this.name + ',' + this.age + ',' + this.friends);
                }
            }
            var animal3 = new Animal1();
            var animal4 = new Animal1();
            animal3.friends.push('snake');
            animal4.friends.push('sheep');
            animal4.name = "xcv";
            animal3.name = "bnf";
            console.log(animal3.friends)
            console.log(animal4.friends)
            animal3.sayHello();
            animal4.sayHello();
            //如果里面有引用類型friend  則改一個全改

            //  原型+構(gòu)造函數(shù)
            function Power(name,age){
                this.name = name;
                this.age = age;
                this.friends = ['car','bus'];
            }
            Power.prototype.sayHello = function(){
                console.log(this.name + ',' + this.age + ',' + this.friends)
            }
            var power = new Power('bcb',56);
            var power1 = new Power('nbgh',89);

            power.friends.push('caps');
            power1.friends.push('faker')

            power.sayHello();
            power1.sayHello();

            console.log(power.friends)
            console.log(power1.friends)
        </script>
    </body>
</html>

當(dāng)前標(biāo)題:對象創(chuàng)建的幾種方式
網(wǎng)頁網(wǎng)址:http://www.chinadenli.net/article46/peiohg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站制作域名注冊營銷型網(wǎng)站建設(shè)網(wǎng)站收錄網(wǎng)站策劃網(wǎng)站排名

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都做網(wǎng)站