js基于什么(對(duì)于javascript理解)

發(fā)布時(shí)間:2024-04-16
本文主要介紹js是基于什么的(對(duì)于javascript的理解),下面一起看看js是基于什么的(對(duì)于javascript的理解)相關(guān)資訊。
javascript不同于java的面向?qū)ο笳Z(yǔ)言,結(jié)合,調(diào)用,application函數(shù)進(jìn)一步擴(kuò)展了這種靈活性。為了保證可讀性,本文采用意譯代替直譯。另外,本作品版權(quán)歸原作者所有,翻譯僅供學(xué)習(xí)使用。如果你不 如果對(duì)javascript這個(gè)關(guān)鍵詞理解不夠深入,有時(shí)會(huì)遇到意想不到的困難。這里我們總結(jié)了五條通用規(guī)則,幫助你判斷這個(gè)方向。雖然沒(méi)有包括所有的情況,但是大部分的日常情況都可以用來(lái)進(jìn)行正確的推斷。這個(gè)值通常是由函數(shù)的執(zhí)行環(huán)境決定的,即函數(shù)是如何調(diào)用的;同一函數(shù)的每次調(diào)用都可以指向不同的對(duì)象。全局對(duì)象(global object)打開(kāi)chrome瀏覽器開(kāi)發(fā)者面板(windows: ctrl shift j) (mac option j),進(jìn)入:console . log(ben);看看輸出是什么{window window object!因?yàn)樵谌址秶鷥?nèi),這指向全局對(duì)象,而在瀏覽器中,全局對(duì)象是窗口對(duì)象。為了讓您更好地理解為什么它指向一個(gè)窗口對(duì)象,讓 讓我們看另一個(gè)例子:var i = 布蘭登;;我們可以通過(guò)在控制臺(tái)中輸入我的名字來(lái)訪問(wèn)它的值。;布蘭登。事實(shí)上,全局定義中的所有變量都綁定到了window對(duì)象:window . mynam測(cè)試{返回這個(gè);} 測(cè)試;你會(huì)發(fā)現(xiàn)這仍然指向全局窗口對(duì)象。因?yàn)檫@個(gè)關(guān)鍵字不在聲明對(duì)象中,缺省點(diǎn)指向全局窗口對(duì)象。這對(duì)于大多數(shù)初學(xué)者來(lái)說(shuō)可能有點(diǎn)難以理解??赐赀@篇文章你會(huì)大吃一驚。注意:如果在strcit模式下,這就是上面的例子。聲明對(duì)象(declared object)當(dāng)這個(gè)關(guān)鍵字用在聲明對(duì)象中時(shí),它的值被綁定到調(diào)用這個(gè)函數(shù)的最近的父對(duì)象:var first: john,last: ;smith,all:function{ console . log(first,last);} };person . full; john//smith這個(gè)函數(shù)用來(lái)聲明對(duì)象的所有函數(shù)。那么調(diào)用這個(gè)完整函數(shù)的最近的父對(duì)象是一個(gè)人,所以這個(gè)指向一個(gè)人。為了更好地描述實(shí)際指向人類對(duì)象這一點(diǎn),您可以將以下代碼復(fù)制到瀏覽器控制臺(tái)并打印出來(lái)。var優(yōu)先:約翰,最后: smith,all:function{ console . log(ben);} };person . full;object { let 讓我們看一個(gè)更復(fù)雜的例子。var first: john,last: ;smith,all:function{ console . log(first,last);},人物二:{第一: 艾莉森,最后: jones,all:function{ console . log(first,last);} } };這里我們有嵌套的對(duì)象。這個(gè)時(shí)候,誰(shuí)會(huì)指向這個(gè)點(diǎn)呢?讓 讓我們把它打印出來(lái)看看。person . full; john//smith person . person two . full; allison//jones你會(huì)發(fā)現(xiàn)我們之前描述的規(guī)則:它們的值將被綁定到調(diào)用這個(gè)函數(shù)的最近的父函數(shù)。new關(guān)鍵字用新關(guān)鍵字構(gòu)建新對(duì)象時(shí),會(huì)綁定到新對(duì)象:function car (manufacturing,model){ this . make = make;方法=模型;};根據(jù)第一條規(guī)則,你可以推斷這對(duì)于全局對(duì)象是成立的。但是如果我們聲明一個(gè)新的變量,使用一個(gè)新的關(guān)鍵字,這將在car函數(shù)中綁定一個(gè)新的空對(duì)象和初始化方法this.make和值。var mycar =新車。;福特汽車公司。;, 逃離 );console.log(我的車);auto {output: output ford調(diào)用、綁定和應(yīng)用我們可以在calls、bindings和applications中顯示綁定對(duì)象。這三個(gè)功能非常相似,但我們需要注意它們之間的細(xì)微差別。讓 我們來(lái)看一個(gè)例子:函數(shù)加法(c,d){ console.log(,,bcd);} add (3,4);輸出nan因?yàn)檫@個(gè)函數(shù)的輸出函數(shù)是未定義的?,F(xiàn)在我們引入對(duì)象,用call和application調(diào)用:function add (c,d){ console.log(,,bcd);} var ten = a: 1,b:2 };add.call(十,三,四);10 output add.apply (ten,{,});10輸出我們使用add.call時(shí),第一個(gè)參數(shù)是對(duì)象,需要綁定,其余都是添加函數(shù)的原始參數(shù)。所以,從這個(gè)點(diǎn)到ten,這個(gè)ten.b.add.apply點(diǎn)b是類似的,只是第二個(gè)參數(shù)是一個(gè)數(shù)組,用來(lái)存儲(chǔ)添加的函數(shù)的參數(shù)。bind函數(shù)類似于調(diào)用,但是bind函數(shù)不會(huì)立即被調(diào)用。函數(shù)的作用是:返回一個(gè)函數(shù)并綁定它。next,讓我們使用示例來(lái)幫助理解綁定()函數(shù)的應(yīng)用場(chǎng)景: var小= { 甲:1, 函數(shù)(b,c,d){ (這console.log。a + b + c + d); } } var 答:100 } 實(shí)施: 小。(2, 3, 4); 10 輸出 如果我們要使用大的值,a,而不是小的,怎么辦我們可以使用調(diào)用/應(yīng)用: 小..呼叫(大,2, 3, 4); 109 輸出 但是,如果我們不知道現(xiàn)在應(yīng)該引入三個(gè)參數(shù),我們?cè)撛趺崔k呢我們可以使用綁定: 無(wú)功bindtest =小..綁定(大,2); 如果我們打印出來(lái)bindtest控制臺(tái)下,我們會(huì)看到: console.log(bindtest); 函數(shù)的輸出(b、c、d、{ log)。 注意:這個(gè)函數(shù)把這個(gè)綁定到大對(duì)象并傳遞了第一個(gè)參數(shù),所以我們需要傳遞剩下的參數(shù): (3, 4)bindtest; 109 輸出 箭頭函數(shù)(=) 因?yàn)樗枰艽蟮目臻g,我們會(huì)寫一篇博客來(lái)介紹它。 結(jié)論 當(dāng)你讀完這篇博客時(shí),你應(yīng)該能夠理解在大多數(shù)情況下這一點(diǎn)所指向的對(duì)象。 那么讓我們總結(jié)一下。 這個(gè)值通常由當(dāng)前函數(shù)的執(zhí)行環(huán)境決定; 在全局范圍內(nèi),這指向全局對(duì)象(窗口對(duì)象); 當(dāng)使用新的關(guān)鍵字聲明時(shí),這指向新對(duì)象; 我們可以使用調(diào)用()()、綁定()、應(yīng)用()來(lái)設(shè)置這個(gè); 箭頭函數(shù)不綁定此。 原文:javascript:初學(xué)者的關(guān)鍵字 翻譯:fundebug
了解更多js是基于什么的(對(duì)于javascript的理解)相關(guān)內(nèi)容請(qǐng)關(guān)注本站點(diǎn)。
上一個(gè):根據(jù)國(guó)標(biāo)GB25541-2010檢測(cè)食品添加劑聚葡萄糖
下一個(gè):qq同步助手導(dǎo)出照片到電腦(怎樣從qq相冊(cè)導(dǎo)出照片到電腦)

虛擬內(nèi)存有什么用(虛擬內(nèi)存用來(lái)干嘛的)
上海鷹衡稱重電子地磅秤使用說(shuō)明
噴涂廢氣處理設(shè)備的這些處理方法,你了解幾個(gè)?
北師大藍(lán)光/可見(jiàn)光比率計(jì)
德國(guó)皮爾茲pilz安全控制系統(tǒng)代理品牌pss67 plc
什么牌子的移動(dòng)硬盤最好最安全,哪個(gè)牌子的移動(dòng)硬盤質(zhì)量最好
MPRT-8415全自動(dòng)繼電保護(hù)測(cè)試儀組成部分
東莞東城中歐專線選擇哪家好,東莞中歐專線
云服務(wù)器ecs組件
醫(yī)院污水處理設(shè)備處理的污水的水質(zhì)分析
十八禁 网站在线观看免费视频_2020av天堂网_一 级 黄 色 片免费网站_绝顶高潮合集Videos