欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JavaScript中創(chuàng)建類/對象的幾種方法總結(jié)

 更新時間:2013年11月29日 09:10:20   作者:  
這篇文章主要是對JavaScript中創(chuàng)建類/對象的幾種方法進行了詳細的總結(jié)介紹,需要的朋友可以過來參考下,希望對大家有所幫助

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

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

一、由一對大括號括起來

復(fù)制代碼 代碼如下:

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

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

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

復(fù)制代碼 代碼如下:

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();
    // 結(jié)果
    // 1-myObj 1+myObj

二、用 function 關(guān)鍵字模擬 class

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

復(fù)制代碼 代碼如下:

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

三、在函數(shù)體中創(chuàng)建一個對象,聲明其屬性再返回

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

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

復(fù)制代碼 代碼如下:

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);

        // 結(jié)果
        // 2
        // myclass
        // 1
        // _myclass

相關(guān)文章

  • js實現(xiàn)的日期操作類DateTime函數(shù)代碼

    js實現(xiàn)的日期操作類DateTime函數(shù)代碼

    感覺js自帶的Date類型對象用起來不是很方便,照著C#的DateTime做了一個
    2010-03-03
  • 小程序?qū)崿F(xiàn)計算器功能

    小程序?qū)崿F(xiàn)計算器功能

    這篇文章主要為大家詳細介紹了小程序?qū)崿F(xiàn)計算器功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • JavaScript檢測上傳文件大小的方法

    JavaScript檢測上傳文件大小的方法

    這篇文章主要介紹了JavaScript檢測上傳文件大小的方法,涉及javascript針對上傳文件的相關(guān)判定技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • 微信小程序?qū)崿F(xiàn)音頻文件播放進度的實例代碼

    微信小程序?qū)崿F(xiàn)音頻文件播放進度的實例代碼

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)音頻文件播放進度的實例代碼,代碼包括對進度條的實現(xiàn)及進度條的滑動,對大家的工作或?qū)W習(xí)具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-03-03
  • JavaScript判斷瀏覽器版本的方法

    JavaScript判斷瀏覽器版本的方法

    這篇文章主要介紹了JavaScript判斷瀏覽器版本的方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-11-11
  • JS猜數(shù)字游戲?qū)嵗v解

    JS猜數(shù)字游戲?qū)嵗v解

    這篇文章主要為大家詳細介紹了JS猜數(shù)字游戲?qū)嵗?,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • JS實現(xiàn)的DIV塊來回滾動效果示例

    JS實現(xiàn)的DIV塊來回滾動效果示例

    這篇文章主要介紹了JS實現(xiàn)的DIV塊來回滾動效果,結(jié)合實例形式分析了JS通過時間函數(shù)定時觸發(fā)動態(tài)改變頁面元素樣式的相關(guān)操作技巧,需要的朋友可以參考下
    2017-02-02
  • iconfont的N種使用方法小結(jié)

    iconfont的N種使用方法小結(jié)

    使用iconfont字體圖標可以隨意改變大小,避免圖片放大失真問題,但是值得注意,修改字體圖標大小的時候使用font-size屬性,并且顏色可隨意更改,本文給大家介紹iconfont的N種使用方法,感興趣的朋友一起看看吧
    2024-01-01
  • 解決js相同的正則多次調(diào)用test()返回的值卻不同的問題

    解決js相同的正則多次調(diào)用test()返回的值卻不同的問題

    今天小編就為大家分享一篇解決js相同的正則多次調(diào)用test()返回的值卻不同的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • JavaScript字符串_動力節(jié)點Java學(xué)院整理

    JavaScript字符串_動力節(jié)點Java學(xué)院整理

    JavaScript中的字符串就是用''或""括起來的字符表示。下面通過本文給大家介紹JavaScript字符串的相關(guān)知識,感興趣的朋友一起看看吧
    2017-06-06

最新評論