麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > JavaScript > 正文

JavaScript中創建類/對象的幾種方法總結

2019-11-20 21:33:45
字體:
來源:轉載
供稿:網友

在JS中,創建對象(Create Object)并不完全是我們時常說的創建類對象,JS中的對象強調的是一種復合類型,JS中創建對象及對對象的訪問是極其靈活的。

JS對象是一種復合類型,它允許你通過變量名存儲和訪問,換一種思路,對象是一個無序的屬性集合,集合中的每一項都由名稱和值組成(聽起來是不是很像我們常聽說的HASH表、字典、健/值對?),而其中的值類型可能是內置類型(如number,string),也可能是對象。

一、由一對大括號括起來

復制代碼 代碼如下:

var emptyObj = {};
    var myObj =
    {
        'id': 1,        //屬性名用引號括起來,屬性間由逗號隔開
        'name': 'myName'
    };
    //var m = new myObj(); //不支持

不知你注意到對象都是用 var 聲明的沒有,像上面的代碼,就只是簡單的聲明一個對象,它只有一份拷貝,你不能像實例化類對象一樣對它采用new操作,像上面代碼的注釋部分。這樣就極大的限制了對象的重用,除非你建立的對象只需要一份拷貝,否則考慮用其他方法建立對象。

下面一起看看如何訪問對象的屬性和方法。

復制代碼 代碼如下:

var myObj =
    {
        'id': 1,
        'fun': function() {
            document.writeln(this.id + '-' + this.name);//以"對象.屬性"方式訪問
        },
        'name': 'myObj',
        'fun1': function() {
            document.writeln(this['id'] + '+' + this['name']);//以集合方式訪問
        }
    };
    myObj.fun();
    myObj.fun1();
    // 結果
    // 1-myObj 1+myObj

二、用 function 關鍵字模擬 class

在 function 中用 this 引用當前對象,通過對屬性的賦值來聲明屬性。如果用var聲明變量,則該變量為局部變量,只允許在類定義中調用。

復制代碼 代碼如下:

function myClass() {
            this.id = 5;
            this.name = 'myclass';
            this.getName = function() {
                return this.name;
            }
        }
        var my = new myClass();
        alert(my.id);
        alert(my.getName());
        // 結果
        // 5
        // myclass

三、在函數體中創建一個對象,聲明其屬性再返回

在函數體中創建對象可利用第一點的方法,或先 new Object(); 再為各屬性賦值。

不過用這種方式創建的對象在VS2008 SP1中是沒有智能提示的。

復制代碼 代碼如下:

function myClass() {
            var obj =
            {
                'id':2,
                'name':'myclass'
            };
            return obj;
        }
        function _myClass() {
            var obj = new Object();
            obj.id = 1;
            obj.name = '_myclass';
            return obj;
        }
        var my = new myClass();
        var _my = new _myClass();
        alert(my.id);
        alert(my.name);
        alert(_my.id);
        alert(_my.name);

        // 結果
        // 2
        // myclass
        // 1
        // _myclass

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久综合 | 一级做a爱视频 | 鲁丝片一区二区三区免费入口 | 午夜国产在线观看 | 九九热免费视频在线观看 | 亚洲影视中文字幕 | 国产一区二区三区视频在线观看 | 欧美18videos性处按摩 | 国产porn在线 | 亚洲欧美一区二区三区在线观看 | 国产一区二区三区欧美 | 永久免费毛片 | 国产日韩免费观看 | 一级免费黄色免费片 | 国产一级一国产一级毛片 | 午夜伦情电午夜伦情电影 | 特级黄色一级毛片 | 久久久久亚洲美女啪啪 | 久久精品com | 九九热视频在线 | 欧美三日本三级少妇三级99观看视频 | 国产精品免费观看视频 | 一本到免费视频 | 日韩精品羞羞答答 | 国产成人精品一区在线播放 | 国产精品成aⅴ人片在线观看 | 蜜桃欧美性大片免费视频 | 久久亚色 | 男人午夜小视频 | 欧洲黄视频 | 国产一级一区二区三区 | 日韩精品一二三 | 亚洲经典视频 | 亚洲成人欧美在线 | 欧美视频黄色 | 国产免费一区二区三区视频 | 蜜桃精品视频 | 一级色毛片| 成人店女老板视频在线看 | 99这里精品 | 性aaa|