摘要:宿主對象就是執(zhí)行腳本的環(huán)境提供的對象。對于嵌入到網(wǎng)頁中的來說,其宿主對象就是瀏覽器提供的對象,所以又稱為瀏覽器對象,如等瀏覽器提供的對象。
1.對象:Javascript中所有事物都是對象,如:數(shù)值、數(shù)組、字符串、函數(shù)... 還可以自定義對象
對象的分類: (1)內(nèi)部對象:Boolean類、Number類、字符串string、Date類 【Array、Boolean、Date、Function、Global、Math、Number、Object、RegExp、String以及各種錯誤類對象,包括Error、EvalError、RangeError、ReferenceError、SyntaxError和TypeError】 其中Global和Math這兩個對象又被稱為“內(nèi)置對象”,這兩個對象在腳本程序初始化時被創(chuàng)建,不必實(shí)例化這兩個對象。 (2)宿主對象: 就是執(zhí)行JS腳本的環(huán)境提供的對象。對于嵌入到網(wǎng)頁中的JS來說,其宿主對象就是瀏覽器提供的對象,所以又稱為瀏覽器對象,如IE、Firefox等瀏覽器提供的對象。不同的瀏覽器提供的宿主對象可能不同,即使提供的對象相同,其實(shí)現(xiàn)方式也大相徑庭!這會帶來瀏覽器兼容問題,增加開發(fā)難度。 瀏覽器對象有很多,如Window和Document等等。 (3)自定義對象:即程序員用代碼自己定義的2.對象的屬性:
屬性是與對象相關(guān)的值。 訪問對象屬性的語法是:objectName.propertyName example: var obj="hello everyone!"; console.log(obj.length); 打印結(jié)果:153.訪問對象的方法:
方法是能夠在對象上執(zhí)行的動作 語法:objectName.methodName(); example: var obj="hello everyone!"; obj.toUpperCase(); 打印結(jié)果:HELLO EVERYONE4.對象的多種創(chuàng)建方式:
1.使用字面量直接創(chuàng)建
example: var obj={ key:value, key:value, method:function(){ alert("I am Method"); } }
用法:obj.method();
2.Object構(gòu)造函數(shù)創(chuàng)建
example: var obj= new Object(); obj.name="lucky", obj.age="18" 用法:obj();
3.使用工廠方式創(chuàng)建
example: function object(name, age, Introduction) { var o = new Object(); //創(chuàng)建對象 o.name = "lucky", o.age = "18", o.Introduction = function() { alert(o.name, o.age); } return o; }
4.使用構(gòu)造函數(shù)創(chuàng)建
example: function Introduction(name,age,Introduction){ this.name=name; this.age=age; this.Introduction=function(){ alert("My name is" + this.name + "My age" + this.age); } } 用法: var s1=new Introduction("Lili","16"); var s2=new Introduction("Meimei","17");
5.使用原型創(chuàng)建
example: function Proto(){} Proto.prototype.name="Lili"; Proto.prototype.age="12"; Proto.prototype.Introducte=function(){ alert(this.name); }; 用法: var s3 = new Proto();
6.組合使用構(gòu)造函數(shù)和原型模式
example: function Person(name,age, obj) { this.name = name; this.age = age; this.obj = obj; } Person.prototype = { constructor: Person, Introduction: function() { alert(this.name); } } 用法:var Limei = new Person("Limei","20");
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/94086.html
摘要:案例每隔毫秒調(diào)用函數(shù)并顯示時間。當(dāng)點(diǎn)擊按鈕時,停止時間代碼如下計時器每隔毫秒調(diào)用函數(shù),并將返回值賦值給計時器計時器,在載入后延遲指定時間后去執(zhí)行一次表達(dá)式僅執(zhí)行一次。該值標(biāo)識要取消的延遲執(zhí)行代碼塊。 簡述 本系列將持續(xù)更新Javascript基礎(chǔ)部分的知識,誰都想掌握高端大氣的技術(shù),但是我覺得沒有一個扎實(shí)的基礎(chǔ),我認(rèn)為一切高階技術(shù)對我來講都是過眼云煙,要成為一名及格的前端工程師,必須把...
摘要:前綴規(guī)范每個局部變量都需要有一個類型前綴,按照類型可以分為表示字符串。例如,表示以上未涉及到的其他對象,例如,表示全局變量,例如,是一種區(qū)分大小寫的語言。布爾值與字符串相加將布爾值強(qiáng)制轉(zhuǎn)換為字符串。 基本概念 javascript是一門解釋型的語言,瀏覽器充當(dāng)解釋器。js執(zhí)行時,在同一個作用域內(nèi)是先解釋再執(zhí)行。解釋的時候會編譯function和var這兩個關(guān)鍵詞定義的變量,編譯完成后從...
摘要:如果你能看懂以下兩張圖那就可以跳過本總結(jié)了當(dāng)然點(diǎn)個贊再走啊喂啊喂分割線你不知道的上冊作用域和閉包和查詢可以理解為查找變量賦值的目標(biāo)和源頭當(dāng)然賦值可以是隱晦的查詢失敗將在嚴(yán)格模式下導(dǎo)致拋出非嚴(yán)格模式下則會自動創(chuàng)建新變量額分別是修改原有作用域和 如果你能看懂以下兩張圖, 那就可以跳過本總結(jié)了, 當(dāng)然, 點(diǎn)個贊再走啊喂! (#`O′)! showImg(https://segmentfau...
摘要:選擇對象的本質(zhì)是從點(diǎn)擊位置發(fā)射光線,但屏幕坐標(biāo)系與坐標(biāo)系是不同的,而把屏幕的二維坐標(biāo)轉(zhuǎn)化為三維坐標(biāo)就是關(guān)鍵,做一步換算后交由的方法即可。 Three.js 選擇對象的本質(zhì)是從點(diǎn)擊位置發(fā)射光線,但屏幕坐標(biāo)系與webgl坐標(biāo)系是不同的,而把屏幕的二維坐標(biāo)轉(zhuǎn)化為三維坐標(biāo)就是關(guān)鍵,做一步換算后交由Raycaster的setFromCamera方法即可。所以思路如下:1.獲取屏幕坐標(biāo)(x, y)...
摘要:給初學(xué)者的印象總是那么的雜而亂,相信很多初學(xué)者都在找輕松學(xué)習(xí)的途徑。通常學(xué)了很久的基礎(chǔ)之后,變量函數(shù)對象你也都略知一二,但一到公司開發(fā)項(xiàng)目的時候,卻又難以下手。 Js給初學(xué)者的印象總是那么的雜而亂,相信很多初學(xué)者都在找輕松學(xué)習(xí)Js的途徑。在這里給大家總結(jié)一些學(xué)習(xí)Js的經(jīng)驗(yàn),希望能給后來的學(xué)習(xí)者探索出一條輕松學(xué)習(xí)Js之路。Js給人那種感覺的原因多半是因?yàn)樗缦碌奶攸c(diǎn):A:本身知識很抽象、...
閱讀 3133·2021-11-15 18:14
閱讀 1787·2021-09-22 10:51
閱讀 3303·2021-09-09 09:34
閱讀 3517·2021-09-06 15:02
閱讀 1037·2021-09-01 11:40
閱讀 3198·2019-08-30 13:58
閱讀 2536·2019-08-30 11:04
閱讀 1091·2019-08-28 18:31