bl双性强迫侵犯h_国产在线观看人成激情视频_蜜芽188_被诱拐的少孩全彩啪啪漫画

對象創建的幾種方式

<!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   構造函數創建
            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   原型模式創建
            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  則改一個全改

            //  原型+構造函數
            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>

當前標題:對象創建的幾種方式
網頁網址:http://vcdvsql.cn/article46/peiohg.html

成都網站建設公司_創新互聯,為您提供品牌網站制作、域名注冊、營銷型網站建設網站收錄、網站策劃網站排名

廣告

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

成都做網站