這篇文章主要介紹“javascript對(duì)象類型有哪些”,在日常操作中,相信很多人在javascript對(duì)象類型有哪些問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”javascript對(duì)象類型有哪些”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!
工布江達(dá)網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、響應(yīng)式網(wǎng)站建設(shè)等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營(yíng)維護(hù)。成都創(chuàng)新互聯(lián)公司自2013年起到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
javascript的三種對(duì)象類型:1、內(nèi)部對(duì)象,包括需要實(shí)例化才能使用的本地對(duì)象和不需要實(shí)例化就能使用的內(nèi)置對(duì)象;2、宿主對(duì)象,就是執(zhí)行JS腳本的環(huán)境提供的對(duì)象;3、自定義對(duì)象,就是開發(fā)人員自己定義的對(duì)象。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
javascript中的對(duì)象可以分為三大類,分別是內(nèi)部對(duì)象(本地對(duì)象和內(nèi)置對(duì)象)、宿主對(duì)象和自定義對(duì)象。
1、內(nèi)部對(duì)象
1)、本地對(duì)象,ECMAScript提供的需要實(shí)例化(new)才能使用的對(duì)象:
Object、Function、Array、String、Boolean、Number、Date、RegExp、Error、EvalError、RangeError、ReferenceError、SyntaxError、TypeError、URIError
2)、內(nèi)置對(duì)象,ECMAScript提供的不需要實(shí)例化就能使用的對(duì)象:
只有Global (全局對(duì)象)和 Math
Math 對(duì)象屬性
屬性 | 描述 |
---|---|
E | 返回算術(shù)常量 e,即自然對(duì)數(shù)的底數(shù)(約等于2.718)。 |
LN2 | 返回 2 的自然對(duì)數(shù)(約等于0.693)。 |
LN10 | 返回 10 的自然對(duì)數(shù)(約等于2.302)。 |
LOG2E | 返回以 2 為底的 e 的對(duì)數(shù)(約等于 1.4426950408889634)。 |
LOG10E | 返回以 10 為底的 e 的對(duì)數(shù)(約等于0.434)。 |
PI | 返回圓周率(約等于3.14159)。 |
SQRT1_2 | 返回 2 的平方根的倒數(shù)(約等于 0.707)。 |
SQRT2 | 返回 2 的平方根(約等于 1.414)。 |
Math 對(duì)象方法
方法 | 描述 |
---|---|
abs(x) | 返回 x 的絕對(duì)值。 |
acos(x) | 返回 x 的反余弦值。 |
asin(x) | 返回 x 的反正弦值。 |
atan(x) | 以介于 -PI/2 與 PI/2 弧度之間的數(shù)值來返回 x 的反正切值。 |
atan2(y,x) | 返回從 x 軸到點(diǎn) (x,y) 的角度(介于 -PI/2 與 PI/2 弧度之間)。 |
ceil(x) | 對(duì)數(shù)進(jìn)行上舍入。 |
cos(x) | 返回?cái)?shù)的余弦。 |
exp(x) | 返回 Ex 的指數(shù)。 |
floor(x) | 對(duì) x 進(jìn)行下舍入。 |
log(x) | 返回?cái)?shù)的自然對(duì)數(shù)(底為e)。 |
max(x,y,z,...,n) | 返回 x,y,z,...,n 中的最高值。 |
min(x,y,z,...,n) | 返回 x,y,z,...,n中的最低值。 |
pow(x,y) | 返回 x 的 y 次冪。 |
random() | 返回 0 ~ 1 之間的隨機(jī)數(shù)。 |
round(x) | 四舍五入。 |
sin(x) | 返回?cái)?shù)的正弦。 |
sqrt(x) | 返回?cái)?shù)的平方根。 |
tan(x) | 返回角的正切。 |
JavaScript 全局屬性
屬性 | 描述 |
---|---|
Infinity | 代表正的無窮大的數(shù)值。 |
NaN | 指示某個(gè)值是不是數(shù)字值。 |
undefined | 指示未定義的值。 |
JavaScript 全局函數(shù)
函數(shù) | 描述 |
---|---|
decodeURI() | 解碼某個(gè)編碼的 URI。 |
decodeURIComponent() | 解碼一個(gè)編碼的 URI 組件。 |
encodeURI() | 把字符串編碼為 URI。 |
encodeURIComponent() | 把字符串編碼為 URI 組件。 |
escape() | 對(duì)字符串進(jìn)行編碼。 |
eval() | 計(jì)算 JavaScript 字符串,并把它作為腳本代碼來執(zhí)行。 |
isFinite() | 檢查某個(gè)值是否為有窮大的數(shù)。 |
isNaN() | 檢查某個(gè)值是否是數(shù)字。 |
Number() | 把對(duì)象的值轉(zhuǎn)換為數(shù)字。 |
parseFloat() | 解析一個(gè)字符串并返回一個(gè)浮點(diǎn)數(shù)。 |
parseInt() | 解析一個(gè)字符串并返回一個(gè)整數(shù)。 |
String() | 把對(duì)象的值轉(zhuǎn)換為字符串。 |
unescape() | 對(duì)由 escape() 編碼的字符串進(jìn)行解碼。 |
2、宿主對(duì)象
宿主對(duì)象就是執(zhí)行JS腳本的環(huán)境提供的對(duì)象,是瀏覽器提供的對(duì)象。所有的BOM和DOM都是宿主對(duì)象。
3、自定義對(duì)象
開發(fā)人員自己定義的對(duì)象
⑴對(duì)象字面量方式(通過JSON來創(chuàng)建對(duì)象)
缺點(diǎn):使用同一個(gè)接口創(chuàng)建很多對(duì)象,會(huì)產(chǎn)生大量的重復(fù)代碼。
⑵工廠模式。
①工廠模式就是將創(chuàng)建對(duì)象的語句放在一個(gè)函數(shù)里,通過傳入?yún)?shù)來創(chuàng)建特定對(duì)象,最后返回創(chuàng)建的對(duì)象。
函數(shù)createPerson()能夠根據(jù)接受到的參數(shù)來構(gòu)建一個(gè)包含所有必要信息的Person對(duì)象。
可以無數(shù)次的調(diào)用這個(gè)函數(shù),而每次它都會(huì)返回一個(gè)包含2個(gè)屬性和一個(gè)方法的對(duì)象。
②缺點(diǎn):工廠模式雖然可以創(chuàng)建多個(gè)相似的對(duì)象,但卻不能解決對(duì)象標(biāo)識(shí)的問題,即怎樣知道一個(gè)對(duì)象的類型。
⑶構(gòu)造函數(shù)模式
①缺點(diǎn):使用構(gòu)造函數(shù)的主要問題是:每個(gè)方法都要在每個(gè)實(shí)例上創(chuàng)建一遍。
②在ECMAScript中,函數(shù)即對(duì)象,因此每定義一個(gè)函數(shù),也就是實(shí)例化了一個(gè)對(duì)象。
③也就是說通過構(gòu)造函數(shù)實(shí)例化的多個(gè)對(duì)象的方法,是多個(gè)不同的方法,但它們內(nèi)部的代碼以及實(shí)現(xiàn)的功能是相同的,這就造成了一定的資源浪費(fèi)。
⑷原型模式
①js中,每個(gè)函數(shù)都有一個(gè)prototype屬性,它是一個(gè)指針,指向一個(gè)對(duì)象,叫做原型對(duì)象。
②使用原型模式可以讓所有的實(shí)例共享原型對(duì)象中的屬性和方法,也就是說,不必再構(gòu)造函數(shù)中定義對(duì)象實(shí)例的信息。
③缺點(diǎn):省略了為構(gòu)造函數(shù)傳遞初始化參數(shù)這一環(huán)節(jié),結(jié)果所有實(shí)例在默認(rèn)情況下都將取得相同的屬性值。
原型模式的最大問題是由共享的本性所導(dǎo)致的。原型中所有屬性是被很多實(shí)例共享的
這種共享對(duì)于函數(shù)非常合適。對(duì)于包含引用類型的屬性來說,問題就比較突出了。
④因此,很少單獨(dú)使用原型模式。
⑸組合使用構(gòu)造函數(shù)模式和原型模式
①組合使用構(gòu)造函數(shù)模式和原型模式,是創(chuàng)建自定義類型的最常見方式。
②構(gòu)造函數(shù)模式用于定義實(shí)例屬性,而原型模式用于定義方法和共享的屬性。
③結(jié)果,每個(gè)實(shí)例都會(huì)有自己的一份實(shí)例屬性的副本,但同時(shí)又共享著對(duì)方法的引用,最大限度的節(jié)省了內(nèi)存。
⑹其他模式
①動(dòng)態(tài)原型模式:僅在第一次調(diào)用構(gòu)造函數(shù)時(shí),將方法賦給原型對(duì)象的相應(yīng)屬性,其他示例的處理方式同構(gòu)造函數(shù)模式
②寄生構(gòu)造函數(shù)模式:僅僅封裝創(chuàng)建對(duì)象的代碼,然后再返回新創(chuàng)建的對(duì)象,仍使用new操作符調(diào)用
③穩(wěn)妥構(gòu)造函數(shù)模式:沒有公共屬性,只有私有變量和方法,以及一些get/set方法,用以處理私有變量。
到此,關(guān)于“javascript對(duì)象類型有哪些”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!
本文名稱:javascript對(duì)象類型有哪些
鏈接分享:http://www.rwnh.cn/article16/jjssgg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站策劃、網(wǎng)站收錄、商城網(wǎng)站、網(wǎng)站導(dǎo)航、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)