function Class1() { this.onclick = function(e) { for (var i=0; i < 1000; i++) { var a = new Date(); } }

}

使用this.的方法可 " /> 免费人成网站,www.一级片.com,香蕉成人999视频

一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

JavaScript的面向對象方法以及差別

第一種:使用this關鍵字

function Class1()
{
    this.onclick = function(e)
    {
        for (var i=0; i < 1000; i++)
        {
            var a = new Date();
        }
    } 



使用this.的方法可以很靈活地給對象添加屬性和方法,而且和大部分的OOP語言都相似,甚至在運行中都可以添加。

第二種:使用prototype關鍵字

function clickFunc(e)
{
    for (var i=0; i < 1000; i++)
    {
        var a = new Date();
    }


function Class2()




Class2.prototype.onclick = clickFunc; 

這種用法上來講就沒有第一種顯得靈活。不過在一個對象new出來之前,也是一樣可以隨時添加一個對象的屬性和方法。

可是他們并不是相等的,相對來說,我更喜歡第一種,因為第一種方法相對比較集中,比較容易閱讀代碼。但是在運行的時候,他們運行的效率卻差別相當地大。以下讓我們看一下測試代碼吧:

var total = new Array(); 

function Test1()
{
    var a = new Date();
    for (var i=0; i < 10000; i++)
    {
        var c = new Class1();
        //total.push(c);
    }
    var b = new Date();
    alert(b.getTime()-a.getTime());


function Test2()
{
    var a = new Date();
    for (var i=0; i < 10000; i++)
    {
        var c = new Class2();
        //total.push(c);
    }
    var b = new Date();
    alert(b.getTime()-a.getTime());


第一步作執行時間的測試:發現Test1()需要142ms,而Test2()僅需50ms.發現時間效率上來說,prototype的方法相對this來說,更加高效。 

第二步作內存占用的測試,把total.push(c);這行的注釋去掉,之所以要把它們加入到數組里面去,防止創建的時候,對象比較多的時候,沒有被引用的對象被GC了。結果發現差距不是一般的大,第一種方法要占用二三十M的內存,而第二種只需要一百多K。

成因推斷:
在處理這兩種代碼的時候,第一種,JS的解析器,給每個對象都創建一個單獨的方法,這樣增加了內存的開銷,同時創建方法的時候,增加了運行時間。第二種,JS的解析器和大部分的OOP編譯器一樣的,把對象的數據段和方法段分開存儲了,對于對象的私有數據,則是每個對象一份,而這些方法,則是放在公共的方法段里,所以可以減少運行時間和內存的開銷。

JavaScript技術JavaScript的面向對象方法以及差別,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲怡红院在线观看 | 午夜欧美福利视频 | 伊人网在线视频 | 精品福利视频一区二区三区 | 欧美日韩亚洲精品国产色 | 欧美 日产 国产动漫 | 国产亚洲精品俞拍视频 | 成人春色在线观看免费网站 | 亚洲精品ccc | 午夜日韩视频 | 亚洲欧洲在线观看 | 亚洲色图偷 | 国内精品久久久久久久星辰影视 | 成人精品一区二区久久 | 一区二区美女视频 | v视界影院视频一区二区三区 | 色综合五月婷婷 | 久久福利一区二区 | 在线观看免费黄色小视频 | 亚洲丝袜一区二区 | 91成人免费福利网站在线 | 男女爱爱爽爽福利免费视频 | 久久综合一 | 国产福利在线 | 六月婷婷中文字幕 | 2021国产精品自在拍在线播放 | 亚洲黄色在线网站 | 欧美激情在线免费 | 久久亚洲国产视频 | 国产一区二区不卡 | 91麻豆精品国产 | 美女一级ba大片免色野外 | 欧美 亚洲 丝袜 清纯 中文 | 一区二区三区中文 | 日本免费一区二区三区视频 | 久久一级 | 国产在视频线精品视频 | 国产精品极品美女自在线看免费一区二区 | 婷婷综合国产激情在线 | 成年美女黄网站色大片免费软件看 | 国产成人综合亚洲欧美在 |