版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第二部1.1.1.要描述JavaScript據(jù)類(lèi)第二部1.1.1.要描述JavaScript據(jù)類(lèi)JavaScript的數(shù)據(jù)類(lèi)型可以分為原始類(lèi)型和對(duì)象類(lèi)型原始類(lèi)型包括string、number和boolean三種。其中,字符串是使用一對(duì)單引號(hào)小數(shù);布爾(邏輯)只能有兩個(gè)值:true或false。復(fù)雜類(lèi)型指其他對(duì)象,如Array、Date、Objectundefined(未定義1.2.讀代碼,寫(xiě)結(jié)寫(xiě)出下列表達(dá)式的計(jì)算結(jié)果上述代碼的結(jié)果分別為1.3.要描述null和undefined111vara=[];varb=a;b[0]=1;undefinedundefined素不存在;如果函數(shù)沒(méi)有任何返回值,也返回undefined。2vara=varobj={x:1,y:{z:2}varn=[obj,3,[4,5]];console.log(a<<2);deleten[0]; //轉(zhuǎn)換為字符 //轉(zhuǎn)換為字 //無(wú)法轉(zhuǎn)換為數(shù)值進(jìn)行計(jì)算,因此返回NaN1[objectOjbect] //返回對(duì)象的toString()結(jié)果,按照字符串相加 //null轉(zhuǎn)換為數(shù)值10+"7"*1-1+true+2+上述代碼的輸出結(jié)果分別為上述代上述代碼的輸出結(jié)果分別為上述代碼運(yùn)x、yz值為多上述代碼運(yùn)行后,變x值11;變y值20z10這是因?yàn)?,運(yùn)行第三行代碼時(shí),只執(zhí)行?后的第一個(gè)語(yǔ)句,因此,y值不發(fā)生變化,1.7.對(duì)于“&&”運(yùn)算符,當(dāng)?shù)谝粋€(gè)操作數(shù)為false時(shí),將不會(huì)判斷第二個(gè)操作數(shù),因?yàn)闀r(shí)無(wú)論第二個(gè)操作數(shù)為何,最后的運(yùn)算結(jié)果一定是論第二個(gè)操作數(shù)為何,最后的運(yùn)算結(jié)果一定是true。1.8.上述代碼運(yùn)行后,將產(chǎn)生有效輸出,還是代碼錯(cuò)誤3varempAge=20;varempName;if(empAge>20&&empName.length>{}else}varx=10;vary=varz=x<y?x++:8225console.log(n[0].x);此行代碼錯(cuò)誤,無(wú)法輸出有效信息,會(huì)輸出 信上述代碼運(yùn)行,會(huì)輸出2,這是因?yàn)?,if條件中的邏輯表達(dá)式的第一個(gè)條件(empAge>20)不滿(mǎn)足,會(huì)返回empNameempName.length將發(fā)生錯(cuò)誤;但是,因?yàn)榘l(fā)既然if條件中的邏輯表達(dá)式返回false,則運(yùn)行else上述代碼運(yùn)行,會(huì)輸出2,這是因?yàn)椋琲f條件中的邏輯表達(dá)式的第一個(gè)條件(empAge>20)不滿(mǎn)足,會(huì)返回empNameempName.length將發(fā)生錯(cuò)誤;但是,因?yàn)榘l(fā)既然if條件中的邏輯表達(dá)式返回false,則運(yùn)行else語(yǔ)句:輸出21.9.JavaScriptJavaScript需要注意的是,在函數(shù)體內(nèi)聲明局部變量時(shí),如果不使用var上述代碼的輸出結(jié)果為local。這是因?yàn)?,在函?shù)test()體內(nèi),局部變量的優(yōu)先級(jí)高優(yōu)先。因此,調(diào)用函數(shù)test()時(shí),返回的是局部變量x,其值為local。什么是JavaScriptJavaScript中的函數(shù)作用域是指:變量在聲明它的函數(shù)體以及這個(gè)函數(shù)體嵌套的任意4varx="global";functiontest(){varx="local";returnx;}比如,查看如下代碼上述代碼運(yùn)行,將先輸出undefined,比如,查看如下代碼上述代碼運(yùn)行,將先輸出undefined,再輸出10這是因?yàn)?,雖然變量x在第二行聲明并賦值,但其有效范圍為整個(gè)函數(shù)體,因此,第一行代碼輸出時(shí),表示變量x已經(jīng)聲明但是沒(méi)有賦值,因此輸出undefined;第三行代碼運(yùn)行時(shí),因?yàn)樽兞縳已經(jīng)賦值為10,則輸出10。讀代碼,寫(xiě)結(jié)寫(xiě)出下列代碼的輸出結(jié)果上述代碼中,輸出sum的值為45;輸出i的值為10這是因?yàn)?,在函?shù)test()體內(nèi),循環(huán)計(jì)算完畢后,變量sum的值為從0累加到10,此,循環(huán)完畢后,變量i的值為10。讀代碼,寫(xiě)結(jié)寫(xiě)出下列代碼的輸出結(jié)果5varx="global";functiontest()varx="local";}function{varsum=for(vari=0;i<10;{sum+=}}functionvarx=10;}上述代碼中,先輸出undefined,再輸出local函數(shù)test()體內(nèi)聲明了與全局變量同名的局部變量x,則將覆蓋全局變量,即局部變量?jī)?yōu)先。因此,第一次輸出變量x時(shí),為輸出局部變量x,此時(shí)變量x只有聲明而沒(méi)有賦值,因此輸出undefined;第二次輸出變量x時(shí),局部變量x已經(jīng)賦值,因此輸出字符串簡(jiǎn)述arguments在函數(shù)代碼中,使用特殊對(duì)象arguments可以訪問(wèn)函數(shù)的參數(shù)。即,開(kāi)發(fā)者在定義函數(shù)時(shí),無(wú)需明確的為方法聲明參數(shù),也可以在方法體中使用arguments來(lái)訪問(wèn)參數(shù)。這是因?yàn)椋琣rguments是一種特殊對(duì)象,在函數(shù)代碼中,表示函數(shù)的參數(shù)數(shù)組。正因?yàn)閍rgumentsarguments.length檢上述代碼中,先輸出undefined,再輸出local函數(shù)test()體內(nèi)聲明了與全局變量同名的局部變量x,則將覆蓋全局變量,即局部變量?jī)?yōu)先。因此,第一次輸出變量x時(shí),為輸出局部變量x,此時(shí)變量x只有聲明而沒(méi)有賦值,因此輸出undefined;第二次輸出變量x時(shí),局部變量x已經(jīng)賦值,因此輸出字符串簡(jiǎn)述arguments在函數(shù)代碼中,使用特殊對(duì)象arguments可以訪問(wèn)函數(shù)的參數(shù)。即,開(kāi)發(fā)者在定義函數(shù)時(shí),無(wú)需明確的為方法聲明參數(shù),也可以在方法體中使用arguments來(lái)訪問(wèn)參數(shù)。這是因?yàn)?,arguments是一種特殊對(duì)象,在函數(shù)代碼中,表示函數(shù)的參數(shù)數(shù)組。正因?yàn)閍rgumentsarguments.length檢簡(jiǎn)要描述JavaScript1、函數(shù)語(yǔ)句:即使用function3、使用Function6varf=function(x){returnx*x;Varf=newFunction(“x”,”returnvarf=function(x){returnfunctionreturn}上述代碼運(yùn)行時(shí),先輸functionx)上述代碼運(yùn)行時(shí),先輸functionx)returnx*x;再輸出100這是因?yàn)?,變量f表一個(gè)函數(shù)對(duì)象,因此直接輸出變量時(shí),將輸出函數(shù)體對(duì)應(yīng)的字符文本;f(10)表示調(diào)用變量f所對(duì)應(yīng)的函數(shù),返回100并輸出。閱讀如下代上述代碼運(yùn)行后,輸出結(jié)果為functionf(){然后輸出function;再輸出hello;然后會(huì)輸出異常信息:stringisnotafunction。這是因?yàn)椋x函數(shù)時(shí),函數(shù)名稱(chēng)作為一個(gè)全局變量,該變量指向函數(shù)對(duì)象。因此,行函數(shù)test中的第一行代碼時(shí),將輸出變量f所對(duì)應(yīng)的函數(shù)對(duì)象,即輸出函數(shù)體中代碼的字符串形式;然后執(zhí)行f()表示調(diào)用方法f,則輸出字符串“function”;執(zhí)行代碼Hello列舉幾個(gè)JavaScript中常用的全局函數(shù),并描述其作參考答JavaScript中常用的全局函數(shù)及其作用如下1.parseInt:解析一個(gè)字符串并返回一個(gè)整數(shù)7function{}functionf="hello";}isNaN:檢查某個(gè)值是否是數(shù)字,返回true或者encodeURI:把字符串作為URI進(jìn)行編碼;decodeURI:對(duì)encodeURI()函數(shù)編碼過(guò)的URIeval:計(jì)算某個(gè)字符串,以得到結(jié)果,或者用于執(zhí)行其中的isNaN:檢查某個(gè)值是否是數(shù)字,返回true或者encodeURI:把字符串作為URI進(jìn)行編碼;decodeURI:對(duì)encodeURI()函數(shù)編碼過(guò)的URIeval:計(jì)算某個(gè)字符串,以得到結(jié)果,或者用于執(zhí)行其中的上述代碼運(yùn)行,會(huì)在頁(yè)面輸出 使用JavaScript測(cè)試函數(shù)bubbleSort8vararr=[12,4,9,21,43,functionbubbleSort(arr)for(vari=0;i<arr.length;i++)for(varj=0;j<arr.length-i-1;{if(arr[j]>arr[j+1]){vartemp=arr[j];arr[j]=arr[j+1];arr[j+1]=temp;}}}}function{for(variinarr)if(arr[i]instanceof{}elsedocument.write(arr[i]+'}}}vardata=[1,[20,21],[[301,302],[310,上述代碼運(yùn)行時(shí),將輸出排序后上述代碼運(yùn)行時(shí),將輸出排序后的結(jié)果:[3,49122143]編寫(xiě)函數(shù),實(shí)現(xiàn)插入排插入排序是指,先假定n元素的數(shù)列分為已有序和無(wú)序兩個(gè)部分;然后將無(wú)序數(shù)JavaScript寫(xiě)的插入排序函數(shù)如下所示測(cè)試函數(shù)insertionSort,代碼如9vararr=[12,4,9,21,43,functioninsertionSort(arr)//從第二個(gè)元素開(kāi)for(vari=1;i<arr.length;i++)//取出待比較的元vark=//向前找,找到比當(dāng)前元素大的位varfor(j=i-1;j>=0&&k<arr[j];j--)//向后移動(dòng)一arr[j+1]=}插入元arr[j+1]=}}上述代碼運(yùn)行時(shí),將輸出排序后的結(jié)果:[349122143]上述代碼運(yùn)行時(shí),將輸出排序后的結(jié)果:[349122143]2、將這17是2,就會(huì)在身份證的第18位數(shù)字上出現(xiàn)羅馬數(shù)字的Ⅹ。如果余數(shù)是10,身份證的最后一位號(hào)碼就是2驗(yàn)證其最后一位是否正確時(shí),171891891117+2/11,也就22x。所以,可以判定此verifyCode(id){if(id.length!=18)return將這17位數(shù)字和系數(shù)相乘的結(jié)果相加 vararr=varsum=for(vari=0;i<arr.length;sum+=parseInt(id.charAt(i))*}varc=sum%11;//3、分別對(duì)應(yīng)的最后一位身份證的varch=['1','0','X','9','8','7','6','5','4','3',varcode=varlast=id.charAt(17);last=last=='x'?'X':last;returnlast==code;測(cè)試該方法讀代碼,寫(xiě)結(jié)寫(xiě)出下測(cè)試該方法讀代碼,寫(xiě)結(jié)寫(xiě)出下列代碼的輸出結(jié)果上述代碼的輸出結(jié)[40,50pop()表代碼中,第一次入棧為數(shù)字30;第二次入棧為數(shù)組[40,50],且該數(shù)組排在棧頂。因此,調(diào)用方法pop()時(shí),將刪除并返回棧頂元素[40,50],這是一個(gè)數(shù)組,因此輸出結(jié)果為[40,50]。什么是棧?在JavaScript中,如何模擬棧操作vararr1=[10,20];arr1.push([40,50]);vardata=arr1.pop();varid=在JavaScriptpush素,即頂部入;然后使用數(shù)組的pop()刪除并返回?cái)?shù)組尾部的元素,類(lèi)似于頂部出棧,即上述代碼的輸出結(jié)果為[20,30在JavaScriptpush素,即頂部入;然后使用數(shù)組的pop()刪除并返回?cái)?shù)組尾部的元素,類(lèi)似于頂部出棧,即上述代碼的輸出結(jié)果為[20,304050數(shù)組的方法push()表示入棧,即在棧頂(數(shù)組尾端)添加指定的元素,因此,數(shù)字50shift()(數(shù)組頭部)的元素,因正則表達(dá)式(RegularExpressionvararr1=[10,20,30,在1、結(jié)合String對(duì)象的replace、searchmatch法,實(shí)現(xiàn)對(duì)字符串的替換、查2、定義正則表達(dá)式對(duì)象,實(shí)現(xiàn)對(duì)字符串的復(fù)雜匹配操作讀代碼,寫(xiě)結(jié)寫(xiě)出下列代碼的輸出結(jié)果上述代碼的輸出結(jié)果為3String的search(regexp)法,用于返回第一次出現(xiàn)匹配指定正則表達(dá)式的下標(biāo),試題中,正則表達(dá)式\bdo\b表示匹配完整的單詞do,且不區(qū)分大小寫(xiě)。而變中,第一次出現(xiàn)單詞do(不區(qū)分大小寫(xiě))16閱讀如下代上述代碼運(yùn)行后,輸出結(jié)果為上述代碼運(yùn)行,會(huì)先輸catchblock;再輸出finallyblockfunction{trynum=Number(num);if(isNaN(num)){thrownewError('Argumentsis}console.log('tryblock}catch{console.log('catchblock');return;}finallyconsole.log('finally}console.log('function}varregexp=vardata='HedoestoldtoDo,do.';10xnumbercatch“catchb10xnumbercatch“catchbloc簡(jiǎn)要描述JavaScript簡(jiǎn)要描述JavaScriptJavaScript在JavaScripta,a,如果有就使用;如果沒(méi)有就查找作用域鏈中x,則認(rèn)為這段代碼的作用域鏈上不存在x,將拋出引用錯(cuò)誤異常。(function(num1,{console.log(num1+num2){console.log(num1+num2);閱讀如下代上述代碼運(yùn)行后,閱讀如下代上述代碼運(yùn)行后,輸出結(jié)果為上述代碼運(yùn)行,會(huì)輸出200上述代碼意味著,先執(zhí)行f(),得到該函數(shù)內(nèi)嵌套的一個(gè)函數(shù)對(duì)象g,然后調(diào)用這個(gè)嵌定義函數(shù)f時(shí),它保存一個(gè)作用域鏈,作用域鏈上有兩個(gè)對(duì)象,一個(gè)是函數(shù)對(duì)象,一個(gè)是全局對(duì)象,此時(shí),全局變量a是全局對(duì)象的屬性,和函數(shù)對(duì)象f無(wú)關(guān)。執(zhí)行函數(shù)f,會(huì)創(chuàng)建一個(gè)活動(dòng)對(duì)象,其中保存變量a作為函數(shù)f的屬性而存在。而g套定義在函f,對(duì)其訪問(wèn)變a它沒(méi)有變a,則繼續(xù)往下查找函數(shù)f。找到函數(shù)f的屬性a并返回。因此,輸出結(jié)果為200。這種函數(shù)將變量包裹起來(lái),外部代碼可以通過(guò)內(nèi)嵌函數(shù)g來(lái)訪問(wèn)函數(shù)f內(nèi)的局部變量簡(jiǎn)要描述你對(duì)閉包的理閉包有如下應(yīng)用特征;2、內(nèi)嵌函數(shù):在函數(shù)中聲明有內(nèi)嵌函數(shù),內(nèi)嵌函數(shù)對(duì)函數(shù)中的局部變量進(jìn)行訪問(wèn)閱讀如下代vara=100;functionf(){vara=200;functiong(){return}return}上述代碼運(yùn)行后,分別輸出數(shù)字1、2、3counter,則得到一個(gè)計(jì)數(shù)器,即代碼中的變量c1,用于統(tǒng)計(jì)被調(diào)用的次數(shù);每運(yùn)行一次計(jì)數(shù)器c1,則訪問(wèn)次數(shù)加1。因此分別輸出數(shù)字1、2、3。其次從代碼原理來(lái)分析:函數(shù)counter返回其內(nèi)嵌函數(shù)g,該函數(shù)中包裹了函數(shù)counter的局部變量上述代碼運(yùn)行后,分別輸出數(shù)字1、2、3counter,則得到一個(gè)計(jì)數(shù)器,即代碼中的變量c1,用于統(tǒng)計(jì)被調(diào)用的次數(shù);每運(yùn)行一次計(jì)數(shù)器c1,則訪問(wèn)次數(shù)加1。因此分別輸出數(shù)字1、2、3。其次從代碼原理來(lái)分析:函數(shù)counter返回其內(nèi)嵌函數(shù)g,該函數(shù)中包裹了函數(shù)counter的局部變量n,其初始值為0;每次運(yùn)行函數(shù)g,均訪問(wèn)相應(yīng)的局部變量n,從為3。i3;當(dāng)3salert(i)時(shí),訪問(wèn)的是循環(huán)中的變量i。因此,三次彈出均為數(shù)值3。如果希望實(shí)現(xiàn)分別彈出數(shù)字0、1、2,for(vari=0;i<3;{(function(n)setTimeout(function(){alert(n);},}for(vari=0;i<3;i++)setTimeout(function(){alert(i);},}varn=10;{varn=varg=function()returnreturn}varc1=counter();量i值作為參數(shù)傳入。每次循環(huán)中,調(diào)用一次匿名函數(shù),則啟動(dòng)一個(gè)定時(shí)器對(duì)象,將相應(yīng)的數(shù)字傳入。3s后執(zhí)行函數(shù)時(shí),不再訪問(wèn)循環(huán)中的局部變量i,則會(huì)依次彈出0、1、2。簡(jiǎn)述JavaScript創(chuàng)建自定義對(duì)象的方自定義對(duì)象(user-definedobject)指由用戶(hù)創(chuàng)建的對(duì)象,兼容性問(wèn)題需要由編寫(xiě)者1、對(duì)象直2、new3、function象模板查看如下JavaScript代碼為使上段代碼正確運(yùn)行,請(qǐng)定義對(duì)象UserJavaScript中,this關(guān)鍵字的作用是什么this指向全局對(duì)象籠統(tǒng)的說(shuō),關(guān)鍵字this向當(dāng)前對(duì)象。比如,頂級(jí)代碼中的指定元素事件的時(shí)候,this指定當(dāng)前發(fā)生事件的元素對(duì)象。對(duì)于嵌套函數(shù),如果嵌套函數(shù)作為方法被調(diào)this向調(diào)用它的對(duì)象;如果作為函數(shù)調(diào)用,this是全局對(duì)象或者為undefined(嚴(yán)格模式下。function{=roduce=function{alert("iam"+varp=newUser("mary"); //mary //彈出iam查看如下JavaScript代碼:上述代碼在瀏覽器中運(yùn)行后,第一行的輸出結(jié)果類(lèi)似于:Objectm:function},表示thisWindowthis查看如下JavaScript代碼:上述代碼在瀏覽器中運(yùn)行后,第一行的輸出結(jié)果類(lèi)似于:Objectm:function},表示thisWindowthisomthis對(duì)象;然后運(yùn)行嵌套函數(shù)f時(shí),this指向全局對(duì)象,在瀏覽器中運(yùn)行時(shí),全局對(duì)象為Window對(duì)象。需要注意的是,如果使用嚴(yán)格模式,則第二行會(huì)輸出undefined。查看如下JavaScript代碼:20foo的bar()this向調(diào)用它的對(duì)象,即foo,因此,輸出該對(duì)象中所定義的屬性值。a10簡(jiǎn)述你對(duì)JavaScriptvara=10;varfoo=a:bar:function(){vara=30;returnthis.a}console.log((foo.bar=foo.bar)());varo=m:functionfunction{}}JavaScript,函數(shù)本身就是一個(gè)包含了方法和屬性JavaScript,函數(shù)本身就是一個(gè)包含了方法和屬性的對(duì)象。每個(gè)函數(shù)中都有一個(gè)prototype屬性,該屬性所存儲(chǔ)的就是原型對(duì)象。原型對(duì)象用來(lái)保存共享屬性和方法,可以通過(guò)原型來(lái)實(shí)現(xiàn)為對(duì)象擴(kuò)展屬性,實(shí)現(xiàn)繼承查看如下JavaScript代碼上述代碼運(yùn)行后,輸出結(jié)果是原型對(duì)象中包含著當(dāng)前函數(shù)所有實(shí)例共享的方法和屬性使用函數(shù)的prototype性可以向函數(shù)的原型對(duì)象添加或刪除屬性和方法,并且這些可以使用delete關(guān)鍵字刪除對(duì)象的屬性,包括自有屬性和原型屬性簡(jiǎn)要描述JavaScript中的自有屬性和原型屬Etotype.dept研發(fā)部emp1.job=functionEmp(ename,{this.ename=ename;this.salary=salary;this.toString=function(){returnthis.ename+":"+}varemp1=newEmp("mary",3500);varemp2=newEmp("john",Etotype.hireDate="2015/05/01";deleteemp1.ename;deleteEtotype.hireDate;console.log(emp1.toString()+":"+emp1.hireDate);console.log(emp2.toString()+":"+查看如下JavaScript代碼:輸出結(jié)果分別為true、true、true、falsetruename,查看如下JavaScript代碼:輸出結(jié)果分別為true、true、true、falsetruename,heroname。因此在對(duì)hero用innamename出true;使用hasOwnProperty()進(jìn)行判斷也是輸出true。使用函數(shù)的prototype向函數(shù)的原型添加屬性時(shí),添加的屬性age為原型屬性。因使用in操作符判斷時(shí),先判斷是否為自有屬性,如果沒(méi)有,則在原型鏈中查找屬性age,因此第一行輸出true;但是age并非自有屬性,所以第二行輸出false。否有自有屬性age時(shí),將輸出true。hero.age=console.log('age'inhero);function{=}Htotype.age=20;varhero=newHero();console.log('name'inhero);console.log('age'inhero);hero.age=30;prototype屬性指向某個(gè)prototype屬性指向某個(gè)對(duì)象,由此形成了一條鏈,稱(chēng)之為原型鏈。可以使用isPrototypeOf()方法判定一個(gè)prototype對(duì)象是否存在于另一個(gè)對(duì)象的原鏈中。如果是,返回true,否則返回false中在JavaScript中,繼承都是源于原型,有多種實(shí)現(xiàn)方式。比如修改構(gòu)造函數(shù)的原型,為該構(gòu)造函數(shù)創(chuàng)建的對(duì)象指定統(tǒng)一的父級(jí)對(duì)象。代碼如下只繼承于原型(盡可能地將可重用的屬性和方法添加到原型中代碼如下單獨(dú)修改一個(gè)對(duì)象的原型,而不影響其他對(duì)象的原型。代碼如下修改構(gòu)造函數(shù),這將影響使用該構(gòu)造函數(shù)創(chuàng)建的所有對(duì)象。代碼如下查看如下JavaScript代碼上述代碼運(yùn)行后,輸出結(jié)果是function{=}H=varhero=newHero();delete;deletefunction{Object.setPrototypeOf(this,newvarb1=newB();Object.setPrototypeOf(b1,newA());B.prototype=B.prototype=new該屬性的值從構(gòu)造函數(shù)中繼承而來(lái),即為“unknown“;刪除hero的自有屬性后,再試“Caesar刪除hero的原型屬性后,則輸出“und該屬性的值從構(gòu)造函數(shù)中繼承而來(lái),即為“unknown“;刪除hero的自有屬性后,再試“Caesar刪除hero的原型屬性后,則輸出“undefined查看如下JavaScript代碼:Bb1然使用默認(rèn)的從Object繼承而來(lái)的toString()方法,因此輸出對(duì)象的類(lèi)型和名稱(chēng)。對(duì)象b2是在修改了BA中所定義的toString()方bCall和applycall function{=this.toString=function(){}function{=}varb1=newB();B.prototype=new數(shù)為可選參數(shù),表示將被傳遞方法參數(shù)序列數(shù)為可選參數(shù),表示將被傳遞方法參數(shù)序列不同的是第二個(gè)參數(shù)。對(duì)于apply(),第二個(gè)參數(shù)是一個(gè)參數(shù)數(shù)組,也就是將多個(gè)參數(shù)組合查看如下JavaScript代碼上述代碼運(yùn)行后,輸出結(jié)果是上述代碼運(yùn)行后,輸出Mynameisb。代碼roduce.call(b1);示對(duì)于對(duì)象b1調(diào)用a1的introduce(查看如下JavaScript代碼上述代碼運(yùn)行后,輸出結(jié)果是上述代碼運(yùn)行后,先彈出顯示undefined,再?gòu)棾鲲@示2第一行代碼運(yùn)行后,變量a和b都指向?qū)ο髙n:1},第二行代碼運(yùn)行,先為對(duì)象{n:1}{n:1,x:{n:2}并將變量a指向這個(gè)新對(duì)象,而變量b依然指向原有對(duì)象。因此,a.x將輸出undefined,因?yàn)榇藭r(shí)新對(duì)象中只有屬n有屬x;b.x.n表示向原有對(duì)象的中的新屬性,因此輸出2。vara=b={n:1a.x=a={n:2};function{=roduce=function(){console.log("Mynameis"+)}function{=}vara1=new2.2.1.innerHTML、nodeValue與textContentinnerHTML屬性讀取或設(shè)置節(jié)點(diǎn)起始和結(jié)束標(biāo)簽中的HTML內(nèi)容;textContent2.2.1.innerHTML、nodeValue與textContentinnerHTML屬性讀取或設(shè)置節(jié)點(diǎn)起始和結(jié)束標(biāo)簽中的HTML內(nèi)容;textContent1、通過(guò)HTMLgetElementById()方法:根據(jù)元素的idgetElementsByName()方法:根據(jù)元素name2、通過(guò)CSSquerySelector('selector')和querySelectorAll('selector')方法:根據(jù)CSS選擇器3、通過(guò)document對(duì)象選取,如document.all、document.body2.4.為html頁(yè)面上的一個(gè)按鈕添加onclick事件處理,有幾種方法1接HTML代碼中2.4.為html頁(yè)面上的一個(gè)按鈕添加onclick事件處理,有幾種方法1接HTML代碼中添加其中,funcA()為一個(gè)有效函數(shù)2js代碼中添加,如或其中,btn表示按鈕對(duì)3、定義監(jiān)聽(tīng)函數(shù),代碼如2.5.window對(duì)象除以外的一些常用子對(duì)象,并描述其作用window對(duì)象有很多子對(duì)象,除document以外,還有如下常用子對(duì)象history對(duì)象:此對(duì)象包含用戶(hù)(在瀏覽器窗口中)訪問(wèn)過(guò)的locationURL息,常用于獲取和改變當(dāng)前event象:任何事件觸發(fā)后將會(huì)產(chǎn)生一個(gè)event象,該對(duì)象記錄事件發(fā)2.6.查看如下代碼btn.addEventListener('click',function(){btn.onclick=btn.onclick=<inputtype=”button”onclick=”funcA();”,,target=P單擊段落中的文本“ClickMeP>元素的onclick事件,且觸發(fā)事件的元,,target=P單擊段落中的文本“ClickMeP>元素的onclick事件,且觸發(fā)事件的元事件,再?gòu)棾觥癱lickDIV,target=Pbutton1for(vari=1;i<6;i++)varinput= (空白處 }varid=setInterval(function(){alert("HelloJavaScript");},1000)<scripttype="text/javascript"language="javascript">functionclickP(e){vartarget=e.target||e.srcElement;alert("clickP,target="+target.nodeName);}functionclickDIV(e)vartarget=e.target||e.srcElement;alert("clickDIV,target="+target.nodeName);}<
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度大理石石材行業(yè)知識(shí)產(chǎn)權(quán)保護(hù)合同12篇
- 2024年高風(fēng)險(xiǎn)項(xiàng)目利息支付借款協(xié)議3篇
- 2024蔬菜種子研發(fā)與推廣合作協(xié)議范本3篇
- 2024版維修改造施工合同
- 二零二五年度高壓開(kāi)關(guān)設(shè)備采購(gòu)及調(diào)試合同
- 二零二五年電力公司運(yùn)維檢修人員勞動(dòng)合同范本3篇
- 2025年度核電站設(shè)備安裝施工合同協(xié)議3篇
- 二零二五年度醫(yī)療設(shè)備租賃與維修一體化服務(wù)合同3篇
- 2025年度新型電子商務(wù)平臺(tái)安全協(xié)議應(yīng)用指南合同3篇
- 2024聘用至退休合同續(xù)簽書(shū):醫(yī)療行業(yè)專(zhuān)家續(xù)聘6篇
- 第二章 運(yùn)營(yíng)管理戰(zhàn)略
- 《三本白皮書(shū)》全文內(nèi)容及應(yīng)知應(yīng)會(huì)知識(shí)點(diǎn)
- 專(zhuān)題14 思想方法專(zhuān)題:線段與角計(jì)算中的思想方法壓軸題四種模型全攻略(解析版)
- 醫(yī)院外來(lái)器械及植入物管理制度(4篇)
- 圖像識(shí)別領(lǐng)域自適應(yīng)技術(shù)-洞察分析
- 港口與港口工程概論
- 《念珠菌感染的治療》課件
- 新概念英語(yǔ)第二冊(cè)考評(píng)試卷含答案(第49-56課)
- 商業(yè)倫理與企業(yè)社會(huì)責(zé)任(山東財(cái)經(jīng)大學(xué))智慧樹(shù)知到期末考試答案章節(jié)答案2024年山東財(cái)經(jīng)大學(xué)
- 【奧運(yùn)會(huì)獎(jiǎng)牌榜預(yù)測(cè)建模實(shí)證探析12000字(論文)】
- (完整版)譯林版英語(yǔ)詞匯表(四年級(jí)下)
評(píng)論
0/150
提交評(píng)論