中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久

javascript沒那么簡(jiǎn)單
來(lái)源:易賢網(wǎng) 閱讀:1034 次 日期:2015-04-27 10:29:54
溫馨提示:易賢網(wǎng)小編為您整理了“javascript沒那么簡(jiǎn)單”,方便廣大網(wǎng)友查閱!

寫此文目的是為了讓更多的程序員理解javascript的一些概念,對(duì)是理解不是了解

我們已經(jīng)了解得夠多了,該是向深入理解的方向靠攏的時(shí)候了

為什么這么說(shuō),前些日子收到面試邀請(qǐng),那就去試試唄,有幾年沒有面試過(guò)了吧

和面試官坐在沙發(fā)上,聊天式的他問我答,以下就是幾個(gè)javascript方面的問題

>請(qǐng)創(chuàng)建一個(gè)對(duì)象,包括幾個(gè)公有屬性,接下來(lái)是為對(duì)象創(chuàng)建一個(gè)公有方法,然后為對(duì)象創(chuàng)建幾個(gè)私有屬性,一個(gè)私有方法

說(shuō)實(shí)話,這幾個(gè)問題我默名其妙,要是他讓我用jquery寫個(gè)拖動(dòng)插件什么的,我估計(jì)我能寫挺好,原生的javascript,暈,雖然我看過(guò)jquery源碼解讀,但這些基本概念要命

稍后,我會(huì)在正文中將答案寫出來(lái)

如果面試官在看,說(shuō)聲謝謝,面試完之后我就去深圳購(gòu)書中心買javascript去了,好貴,呵呵,看中之后,到卓越定了一個(gè)《javascript王者歸來(lái)》

然后基本上啥也沒干,仔細(xì)的看了一個(gè)多星期,看不明白的就到園子里來(lái)找,園子里的寶貝真不少!(還壓了個(gè)韻。。。)

本文的例子輸出使用如下方法,便于查看

function dwn(s){

document.write(s+"<br/>");

}

以下內(nèi)容有些是原創(chuàng),有些來(lái)自于網(wǎng)絡(luò),或者可以看成是讀書筆記,如果有哪里不對(duì)的,請(qǐng)各位不吝賜教,在下感激不盡

正文開始:

一,function

從一開始接觸到j(luò)s就感覺好靈活,每個(gè)人的寫法都不一樣,比如一個(gè)function就有N種寫法

如:function showMsg(){},var showMsg=function(){},showMsg=function(){}

似乎沒有什么區(qū)別,都是一樣的嘛,真的是一樣的嗎,大家看看下面的例子

///------------------------------------------------------------------------------------------------

//函數(shù)定義:命名函數(shù)(聲明式),匿名函數(shù)(引用式)

//聲明式,定義代碼先于函數(shù)執(zhí)行代碼被解析

function t1(){

dwn("t1");

}

t1();

function t1(){

dwn("new t1");

}

t1();

//引用式,在函數(shù)運(yùn)行中進(jìn)行動(dòng)態(tài)解析

var t1=function(){

dwn("new new t1");

}

t1();

var t1=function(){

dwn("new new new t1");

}

t1();

//以上輸出:new t1,new t1,new new t1,new new new t1

可能想著應(yīng)該是輸出t1,new t1,new newt1,new new new t1,結(jié)果卻并不是這樣,應(yīng)該理解這句話:聲明式,定義代碼先于函數(shù)執(zhí)行代碼被解析

如果深入一步,應(yīng)該說(shuō)是scope鏈問題,實(shí)際上前面兩個(gè)方法等價(jià)于window.t1,可以理解為t1是window的一個(gè)公有屬性,被賦了兩次值,以最后一次賦值為最終值

而后面兩個(gè)方法,可以理解為是t1是個(gè)變量,第四個(gè)方法的var去掉之后的結(jié)果仍然不會(huì)改變

然而,當(dāng)?shù)谒膫€(gè)方法改成function t1(){}這樣的聲明式時(shí),結(jié)果變成了new new new t1,new new new t1,new new t1,new new t1

前面兩個(gè)按照我的理解可以很好的理解為什么是這個(gè)答案,第三個(gè)也可以理解,但是最后一個(gè)輸出讓我比較糾結(jié),希望有高手出現(xiàn)解答一下

另外匿名函數(shù)還有(function(){...})()這樣的寫法,最后一個(gè)括號(hào)用于參數(shù)輸入

還有var t1=new function(){..}這樣的聲明,實(shí)際上t1已經(jīng)是一個(gè)對(duì)象了

例:

var t2 = new function()

{

var temp = 100; //私有成員

this.temp = 200; //公有成員,這兩個(gè)概念會(huì)在第三點(diǎn)以后展開說(shuō)明

return temp + this.temp;

}

alert(typeof(t2)); //object

alert(t2.constructor()); //300

除此之外,還有使用系統(tǒng)內(nèi)置函數(shù)對(duì)象來(lái)構(gòu)建一個(gè)函數(shù),例:

var t3 = new Function('var temp = 100; this.temp = 200; return temp + this.temp;'); //這個(gè)位置加不加new結(jié)果都一樣,WHY

alert(typeof(t3)); //function

alert(t3()); //300

二,創(chuàng)建對(duì)象

首先我們理解一下面向?qū)ο缶幊蹋∣bject-Oriented Programming,OOP),使用OOP技術(shù),常常要使用許多代碼模塊,每個(gè)模塊都提供特定的功能,每個(gè)模塊都是孤立的,甚至與其它模塊完全獨(dú)立

。這種模塊化編程方法提供了非常大的多樣性,大大增加了代碼的重用機(jī)會(huì)。可以舉例進(jìn)一步說(shuō)明這個(gè)問題,假定計(jì)算機(jī)上的一個(gè)高性能應(yīng)用程序是一輛一流賽車。如果使用傳統(tǒng)的編程技巧,這輛賽車就是

一個(gè)單元。如果要改進(jìn)該車,就必須替換整個(gè)單元,把它送回廠商,讓汽車專家升級(jí)它,或者購(gòu)買一個(gè)新車。如果使用OOP技術(shù),就只需從廠商處購(gòu)買新的引擎,自己按照說(shuō)明替換它,而不必用鋼鋸切割車體。

不過(guò)大部分的論點(diǎn)是,javascript并不是直接的面向?qū)ο蟮恼Z(yǔ)言,但是通過(guò)模擬可以做到很多面向?qū)ο笳Z(yǔ)言才能做到的事,如繼承,多態(tài),封裝,javascript都能干(沒有做不到,只是想不到)

///------------------------------------------------------------------------------------------------

//以下三種構(gòu)造對(duì)象的方法

//new Object,實(shí)例化一個(gè)Object

var a=new Object();

a.x=1,a.y=2;

//對(duì)象直接量

var b={x:1,y:2};

//定義類型

function Point(x,y){ //類似于C#中的類

this.x=x;

this.y=y;

}

var p=new Point(1,2); //實(shí)例化類

第一種方法通過(guò)構(gòu)造基本對(duì)象直接添加屬性的方法來(lái)實(shí)現(xiàn),第二種和第一種差不多,可以看成是第一種方法的快捷表示法

第三種方法中,可以以”類“為基礎(chǔ),創(chuàng)造多個(gè)類型相同的對(duì)象

三,對(duì)象屬性的封裝(公有和私有)

以例子來(lái)說(shuō)明

function List(){

var m_elements=[]; //私有成員,在對(duì)象外無(wú)法訪問,如果此處無(wú)var聲明,則m_elements將變成全局變量,這樣外部是可以直接訪問到的,如alert(m_elements[0])

m_elements=Array.apply(m_elements,arguments);

//此處模擬getter,使用時(shí)alist.length;

//等價(jià)于getName()方式:this.length=function(){return m_elements.length;},使用時(shí)alist.length();

//公有屬性,可以通過(guò)"."運(yùn)算符或下標(biāo)來(lái)訪問

this.length={

valueOf:function(){

return m_elements.length;

},

toString:function(){

return m_elements.length;

}

}

//公有方法,此方法使用得alert(alist)相當(dāng)于alert(alist.toString())

this.toString=function(){

return m_elements.toString();

}

//公有方法

this.add=function(){

m_elements.push.apply(m_elements,arguments);

}

//私有方法如下形式,這里涉及到了閉包的概念,接下來(lái)繼續(xù)說(shuō)明

//var add=function()或function add()

//{

//m_elements.push.apply(m_elements,arguments);

/

更多信息請(qǐng)查看IT技術(shù)專欄

更多信息請(qǐng)查看網(wǎng)頁(yè)制作
易賢網(wǎng)手機(jī)網(wǎng)站地址:javascript沒那么簡(jiǎn)單
由于各方面情況的不斷調(diào)整與變化,易賢網(wǎng)提供的所有考試信息和咨詢回復(fù)僅供參考,敬請(qǐng)考生以權(quán)威部門公布的正式信息和咨詢?yōu)闇?zhǔn)!
相關(guān)閱讀網(wǎng)頁(yè)制作

2026上岸·考公考編培訓(xùn)報(bào)班

  • 報(bào)班類型
  • 姓名
  • 手機(jī)號(hào)
  • 驗(yàn)證碼
關(guān)于我們 | 聯(lián)系我們 | 人才招聘 | 網(wǎng)站聲明 | 網(wǎng)站幫助 | 非正式的簡(jiǎn)要咨詢 | 簡(jiǎn)要咨詢須知 | 新媒體/短視頻平臺(tái) | 手機(jī)站點(diǎn) | 投訴建議
工業(yè)和信息化部備案號(hào):滇ICP備2023014141號(hào)-1 云南省教育廳備案號(hào):云教ICP備0901021 滇公網(wǎng)安備53010202001879號(hào) 人力資源服務(wù)許可證:(云)人服證字(2023)第0102001523號(hào)
云南網(wǎng)警備案專用圖標(biāo)
聯(lián)系電話:0871-65099533/13759567129 獲取招聘考試信息及咨詢關(guān)注公眾號(hào):hfpxwx
咨詢QQ:1093837350(9:00—18:00)版權(quán)所有:易賢網(wǎng)
云南網(wǎng)警報(bào)警專用圖標(biāo)
中文字幕免费精品_亚洲视频自拍_亚洲综合国产激情另类一区_色综合咪咪久久
欧美视频日韩| 国产亚洲欧美一区| 国产精品毛片| 久久黄金**| 午夜精彩视频在线观看不卡| 亚洲国产中文字幕在线观看| 国产日韩欧美精品| 国产精品国产福利国产秒拍| 欧美国产亚洲另类动漫| 久久久久久亚洲精品杨幂换脸| 国内偷自视频区视频综合| 国产精品日韩高清| 欧美色综合网| 欧美黄色精品| 一本到高清视频免费精品| 狠狠88综合久久久久综合网| 日韩视频永久免费观看| 99精品视频一区| 久久久久青草大香线综合精品| 老司机精品视频一区二区三区| 欧美日韩亚洲一区二区三区四区| 国产精品chinese| 99国内精品久久久久久久软件| 亚洲精品免费看| 久久久天天操| 久久只精品国产| 久久精品五月| 久久黄色级2电影| 久热这里只精品99re8久| 午夜一级在线看亚洲| 欧美日韩在线播| 玖玖在线精品| 国产在线视频欧美| 亚洲国产日韩在线| 亚洲永久免费视频| 欧美日韩 国产精品| 另类天堂av| 亚洲电影专区| 国产在线精品二区| 午夜欧美大片免费观看| 男女av一区三区二区色多| 欧美午夜精品理论片a级大开眼界| 亚洲综合电影| 国产自产女人91一区在线观看| 欧美一区二区三区久久精品茉莉花| 久久精品国产一区二区三区| 亚洲国产99| 欧美日韩国产不卡| 亚洲一区二区在线免费观看视频| 91久久国产自产拍夜夜嗨| 午夜精品区一区二区三| 一区在线电影| 欧美日韩亚洲精品内裤| 亚洲影院色无极综合| 国产日韩一区欧美| 久久久久国产一区二区| 1204国产成人精品视频| 一区二区三区福利| 国外视频精品毛片| 久久色在线观看| 亚洲人人精品| 国产精品久久一级| 欧美午夜一区二区三区免费大片| 午夜在线一区二区| 欧美精品二区三区四区免费看视频| 今天的高清视频免费播放成人| 欧美日韩精品福利| 欧美日韩精品一区二区| 欧美成人xxx| 欧美激情亚洲国产| 欧美成人免费网| 欧美成人免费大片| 国产精品欧美精品| 国产精品日韩精品欧美精品| 羞羞色国产精品| 欧美成年人在线观看| 欧美激情一二区| 国产精品免费福利| 一区二区三区我不卡| 国产区日韩欧美| 国产乱肥老妇国产一区二| 亚洲天堂av在线免费| 久久国产日韩| 欧美日韩高清在线观看| 久久国产精品黑丝| 久久精品一区中文字幕| 亚洲国产三级在线| 麻豆成人综合网| 国产老女人精品毛片久久| 日韩视频在线一区二区| 欧美一级片在线播放| 1024成人网色www| 亚洲精品社区| 性色av一区二区怡红| 国产麻豆视频精品| 99精品国产在热久久| 一区二区三区导航| 久久精品国产免费看久久精品| 狂野欧美性猛交xxxx巴西| 欧美另类变人与禽xxxxx| 欧美日本国产一区| 玉米视频成人免费看| 国语自产在线不卡| 曰本成人黄色| 亚洲影院免费| 欧美另类videos死尸| 久久国产88| 国产精品美女久久久| 国精品一区二区| 亚洲高清不卡在线| 国产一区二区中文| 国产精品免费福利| 欧美日在线观看| 国产一区二区高清视频| 日韩午夜视频在线观看| 欧美日韩视频一区二区| 欧美视频二区36p| 欧美色另类天堂2015| 国产精品嫩草影院一区二区| 曰韩精品一区二区| 久久精品国产亚洲高清剧情介绍 | 亚洲精品美女91| 亚洲高清在线精品| 一本久久综合| 久久综合精品国产一区二区三区| 国产精品久久一区主播| 久久久精品2019中文字幕神马| 亚洲精品一区中文| 国产午夜精品在线| 欧美日韩国产成人| 猫咪成人在线观看| 亚洲欧美国产精品va在线观看 | 国产一区二区三区日韩欧美| 亚洲欧美日韩在线综合| 国产精品乱看| 久久亚洲精品欧美| 亚洲第一区中文99精品| 欧美绝品在线观看成人午夜影视| 999在线观看精品免费不卡网站| 欧美美女福利视频| 亚洲视频高清| 在线亚洲精品福利网址导航| 欧美色图首页| 欧美mv日韩mv亚洲| 亚洲国产乱码最新视频| 国产性做久久久久久| 国产在线日韩| 欧美日本在线一区| 午夜视频在线观看一区二区| 国产午夜精品麻豆| 欧美成人福利视频| 在线日韩中文字幕| 韩日在线一区| 国产婷婷一区二区| 国产精品激情偷乱一区二区∴| 亚洲欧美日韩精品久久| 亚洲欧美精品在线| 欧美成人在线影院| 国产精品制服诱惑| 一区免费观看视频| 国产亚洲精品bv在线观看| 最新国产乱人伦偷精品免费网站| 91久久中文| 久久综合伊人77777麻豆| 久久综合网hezyo| 一区二区三区视频免费在线观看| 国产精品高潮呻吟久久av黑人| 极品av少妇一区二区| 亚洲精品一二三| 亚洲——在线| 久久精品成人| 国产精品久久久久一区二区三区| 国产欧美日韩一区| 亚洲欧洲日产国产网站| 久久免费视频观看| 国产精品二区影院| 国产伦精品一区二区三区免费迷 | 国产伦一区二区三区色一情| 国产精品午夜电影| 国产精品久久久久久五月尺| 欧美午夜在线观看| 亚洲欧美日韩天堂| 蜜桃久久av一区| 国产美女一区二区| 日韩亚洲不卡在线| 久久久久一本一区二区青青蜜月| 欧美激情综合色综合啪啪| ●精品国产综合乱码久久久久| 久久精品人人爽| 国外成人在线视频| 久久亚洲国产精品一区二区| 狠色狠色综合久久| 欧美不卡一区| 亚洲午夜久久久| 欧美日韩精品欧美日韩精品一| 日韩一级免费| 国产一区二区福利| 免费久久99精品国产自| 亚洲精品久久久久中文字幕欢迎你| 免费欧美在线视频|