青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

小默

[zz]JavaScript 的 new, 好久不見啊

http://ued.taobao.com/blog/2007/05/15/%E4%BD%A0%E7%9C%9F%E7%9A%84%E4%BC%9A%E5%86%99javascript%E5%90%97%EF%BC%9F/
--

JavaScript 的 new, 好久不見啊

原文: JavaScript, We Hardly new Ya --Douglas Crockford。

JavaScript是一門基于原型的語言,但它卻擁有一個(gè) new 操作符使得其看起來象一門經(jīng)典的面對對象語言。那樣也迷惑了程序員們,導(dǎo)致一些有問題的編程模式。

其實(shí)你永遠(yuǎn)不需要在JavaScript使用 new Object()。用字面量的形式{}去取代吧。

同理,不要使用 new Array() ,而代之以字面量[]。JavaScript中的數(shù)組并不象Java中的數(shù)組那樣工作的,使用類似Java的語法只會(huì)讓你糊涂。

同理不用使用 new Number, new String, 或者 new Boolean。這些的用法只會(huì)產(chǎn)生無用的類型封裝對象。就直接使用簡單的字面量吧。

不要使用 new Function 去創(chuàng)建函數(shù)對象。用函數(shù)表達(dá)式更好。比如:

frames[0].onfocus = new Function(“document.bgColor=’antiquewhite’”)

更好的寫法是:

frames[0].onfocus = function () {document.bgColor = ‘antiquewhite’;};

第二種形式讓腳本編譯器更快的看到函數(shù)主體,于是其中的語法錯(cuò)誤也會(huì)更快被檢測出來。有時(shí)候程序員使用 new Function 是因?yàn)樗麄儧]有理解內(nèi)部函數(shù)是如何工作的。

selObj.onchange = new Function(“dynamicOptionListObjects["+
dol.index+"].change(this)”);

如果我們讓用字符串做函數(shù)體,編譯器不能看到它們。如果我們用字符串表達(dá)式做函數(shù)體,我們同樣也看不到它們。更好的方式就是不要盲目編程。通過制造一個(gè)返回值為函數(shù)的函數(shù)調(diào)用,我們可以明確的按值傳遞我們想要綁定的值。這允許我們在循環(huán)中初始化一系列 selObj 對象。

selObj.onchange = function (i) {
return function () {
dynamicOptionListObjects[i].change(this);

};
}(dol.index);

直接對一個(gè)函數(shù)使用new永遠(yuǎn)不是一個(gè)好主意。比如, new function 對構(gòu)造新對象沒有提供什么優(yōu)勢。

myObj = new function () {
this.type = ‘core’;
};

更好的方式是使用對象字面量,它更輕巧,更快捷。

myObj = {
type: ‘core’
};

假如我們需要?jiǎng)?chuàng)建的對象包含的方法需要訪問私有變量或者函數(shù),更好的方式仍然是避免使用new.var foo = new function() {
function processMessages(message) {
alert(“Message: ” + message.content);
}
this.init = function() {
subscribe(“/mytopic”, this, processMessages);
}
}
通過使用 new 去調(diào)用函數(shù),對象會(huì)持有一個(gè)無意義的原型對象。這只會(huì)浪費(fèi)內(nèi)存而不會(huì)帶來任何好處。如果我們不使用new,我們就不用在對象鏈維護(hù)一個(gè)無用的prototype對象。所以我們可以用()來正確的調(diào)用工廠函數(shù)。var foo = function () {
function processMessages(message) {
alert(“Message: ” + message.content);
}
return {
init: function () {
subscribe(“/mytopic”, this, processMessages);
}
};
}();
所以原則很簡單: 唯一應(yīng)該要用到new操作符的地方就是調(diào)用一個(gè)古老的構(gòu)造器函數(shù)的時(shí)候。當(dāng)調(diào)用一個(gè)構(gòu)造器函數(shù)的時(shí)候,是強(qiáng)制要求使用new的。有時(shí)候可以來new一下, 有的時(shí)候還是不要了吧。

posted on 2011-09-24 04:54 小默 閱讀(500) 評論(0)  編輯 收藏 引用 所屬分類: Language

導(dǎo)航

統(tǒng)計(jì)

留言簿(13)

隨筆分類(287)

隨筆檔案(289)

漏洞

搜索

積分與排名

最新評論

閱讀排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            美日韩精品免费观看视频| 国产日本亚洲高清| 欧美一级大片在线免费观看| 亚洲美女视频在线观看| 一区二区精品在线| 午夜精品视频在线观看| 久久深夜福利| 欧美日韩成人综合| 国产女主播一区二区| ●精品国产综合乱码久久久久| 亚洲高清激情| 亚洲一区视频在线| 久久亚洲综合色| 亚洲精品女av网站| 99在线精品视频在线观看| 亚洲欧美日韩另类| 欧美福利视频网站| 国产精品一区二区三区观看| 亚洲第一视频| 亚洲影视综合| 欧美ab在线视频| 亚洲综合好骚| 欧美精品黄色| 国语自产精品视频在线看一大j8 | 美女国产一区| 亚洲视频久久| 欧美成人在线免费观看| 国产欧美一区二区三区另类精品| 亚洲精品乱码久久久久久日本蜜臀| 午夜精品福利视频| 亚洲电影免费在线| 午夜精品视频在线观看一区二区| 欧美精品激情在线| 伊人久久男人天堂| 久久国产精品久久久| 99精品免费| 欧美精品一区在线发布| 精品福利免费观看| 欧美一区二区日韩一区二区| 亚洲日韩第九十九页| 久久乐国产精品| 国产日韩欧美成人| 亚洲宅男天堂在线观看无病毒| 欧美激情va永久在线播放| 性感少妇一区| 国产精品嫩草99av在线| 亚洲色图制服丝袜| 一区二区免费在线观看| 亚洲一区二区三区免费在线观看| 欧美不卡视频| 亚洲国产一区二区在线| 老鸭窝亚洲一区二区三区| 亚洲欧美一区二区激情| 国产精品久久久久久久久婷婷 | 欧美日韩国产在线| 亚洲欧洲偷拍精品| 亚洲国产精品成人va在线观看| 久久久精品久久久久| 国内精品国产成人| 久久综合999| 久久精品在线免费观看| 黄色另类av| 免费亚洲电影在线观看| 久久全球大尺度高清视频| 在线观看亚洲一区| 欧美国产第一页| 欧美福利在线观看| 一区二区三区精品久久久| 亚洲毛片一区二区| 欧美视频在线免费| 欧美一区午夜视频在线观看| 欧美一区二区三区在线看| 国产一区久久久| 蜜臀av性久久久久蜜臀aⅴ| 美女亚洲精品| 亚洲社区在线观看| 亚洲欧美色一区| 激情六月婷婷久久| 亚洲电影观看| 国产精品美女| 久久午夜激情| 欧美精品偷拍| 欧美亚洲三区| 久久只精品国产| 亚洲视频www| 欧美在线日韩在线| 夜久久久久久| 性欧美大战久久久久久久免费观看| 国产一区二区三区四区在线观看 | 亚洲在线播放| 黄色日韩在线| 在线视频一区二区| 在线观看福利一区| 夜夜狂射影院欧美极品| 国内成人精品2018免费看 | 亚洲精品自在在线观看| 国产区在线观看成人精品| 亚洲成人在线网| 国产精品你懂得| 亚洲国产一区二区精品专区| 国产日本欧美一区二区三区| 亚洲黄色在线看| 国产亚洲精品久| 99精品国产在热久久| 亚洲二区视频在线| 欧美午夜不卡影院在线观看完整版免费| 亚洲第一在线视频| 亚洲午夜羞羞片| 亚洲欧洲一区二区三区| 欧美伊人影院| 亚洲综合色噜噜狠狠| 免费日韩成人| 另类激情亚洲| 国产日韩亚洲欧美精品| 99亚洲伊人久久精品影院红桃| 亚洲国产精品久久久久婷婷老年 | 亚洲激情第一区| 欧美一区二区播放| 亚洲欧美日本另类| 欧美伦理一区二区| 欧美激情精品久久久久久| 国产亚洲一区二区三区在线播放| 9i看片成人免费高清| 亚洲精品在线二区| 久久综合久久久| 免费久久精品视频| 国产午夜久久| 午夜亚洲激情| 久久久久国产成人精品亚洲午夜| 国产精品欧美日韩久久| 99精品视频网| 亚洲视频欧美视频| 欧美无砖砖区免费| 中国日韩欧美久久久久久久久| 亚洲香蕉成视频在线观看 | 久久精品在线视频| 老巨人导航500精品| 国内精品亚洲| 久久久噜噜噜久久狠狠50岁| 免费在线日韩av| 亚洲国产精品久久久久秋霞不卡 | 亚洲视频免费在线| 欧美日韩在线看| 亚洲一级片在线观看| 羞羞色国产精品| 国产一区亚洲| 久久免费少妇高潮久久精品99| 欧美福利一区| 亚洲色图自拍| 国产欧美丝祙| 久久裸体艺术| 亚洲高清av在线| 亚洲一二三区精品| 国产裸体写真av一区二区| 久久av免费一区| 欧美国产亚洲另类动漫| 在线亚洲自拍| 国产亚洲欧美日韩在线一区 | 国产精品一区久久久| 欧美尤物一区| 亚洲国产视频直播| 亚洲欧美变态国产另类| 国产亚洲成精品久久| 免费在线观看日韩欧美| 亚洲一区二区三区高清| 欧美日韩国产区| 亚洲欧美日韩国产综合在线| 免费短视频成人日韩| 日韩午夜视频在线观看| 国产精品普通话对白| 免费观看成人网| 亚洲一区二区免费看| 欧美 日韩 国产在线| 亚洲视频网在线直播| 好吊妞这里只有精品| 欧美日韩成人| 久久免费高清视频| 亚洲午夜影视影院在线观看| 你懂的国产精品永久在线| 亚洲欧美精品中文字幕在线| 亚洲国产精品尤物yw在线观看| 国产精品久久久久久妇女6080| 开心色5月久久精品| 亚洲欧美日韩爽爽影院| 亚洲日韩成人| 欧美va天堂| 久久免费视频一区| 午夜精品短视频| 一本久道久久综合婷婷鲸鱼| 黄色另类av| 国产欧美精品一区二区三区介绍 | 欧美电影免费观看高清完整版| 午夜精彩国产免费不卡不顿大片| 亚洲国产天堂久久综合| 另类专区欧美制服同性| 欧美怡红院视频| 亚洲尤物精选| 国产精品99久久久久久人| 亚洲欧洲精品一区二区| 在线成人免费视频|