欧美亚洲大片-国产免费成人在线视频-国产成人8x人在线视频软件-日韩亚洲欧美中文字幕-97伦伦午夜电影理伦片-亚洲综合精品视频-曰本女人牲交高潮视频-久久久精品欧美-天天干天天操天天碰-精品国产乱码久久久久久1区2区-黄色一级免费片-在线免费欧美-国产成人精品在线视频-精人妻一区二区三区-香蕉视频2020-综合久久99-欧美日韩亚洲国产综合

十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號 掃一掃關(guān)注
小程序
tel-icon全國服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

函數(shù)基本包裝類型介紹

百恒網(wǎng)絡(luò) 2012-09-08 5528

為了便于操作基本類型值,ECMAScript還提供了3個(gè)特殊的引用類型:Boolean、Number和String。這些類犁與前面介紹的其他引用類型相似,但同時(shí)也具有與各自的基本類型相應(yīng)的特殊行為。實(shí)際上,每當(dāng)讀取一個(gè)基本類型值的時(shí)候,后臺就會創(chuàng)建一個(gè)對應(yīng)的基本包裝類型的對象,從而讓我們能夠調(diào)用一些方法來操作這些數(shù)據(jù)。來看下面的例子:

var sl="some text";

var s2=sl.substring(2);

這個(gè)例子中的變量sl包含一個(gè)字符串,字符串當(dāng)然是基本類型值。而下一行調(diào)用了sl的substring()方法,并將返回的結(jié)果保存在了s2中。我們知道,基本類型值不是對象,因而從邏輯上講它們不應(yīng)該有方法(盡管如我們所愿,它們確實(shí)有方法)。其實(shí),為了讓我們實(shí)現(xiàn)這種直觀的操作,后臺已經(jīng)自動完成了一系列的處理。當(dāng)?shù)诙写a訪問sl時(shí),訪問過程處于一種讀取模式,也就是要從內(nèi)存中讀取這個(gè)字符串的值。而在讀取模式中訪問字符串時(shí),后臺都會自動完成下列處理:

(1)創(chuàng)建String類型的一個(gè)實(shí)例;

(2)在實(shí)例上調(diào)用指定的方法;

(3)銷毀這個(gè)實(shí)例。

可以將以上三個(gè)步驟想象成是執(zhí)行了下列ECMAScript代碼:

var sl=new String("some text");

var s2=s1.substring(2);

sl=null;

經(jīng)過此番處理,基本的字符串值就變得跟對象一樣了。而且,上面這三個(gè)步驟也分別適用于Boolean和Number類型對應(yīng)的布爾值和數(shù)字值。

引用類型與基本包裝類型的主要區(qū)別就是對象的生存期。使用new操作符創(chuàng)建的引用類型的實(shí)例,在執(zhí)行流離開當(dāng)前作用域之前都一直保存在內(nèi)存中。而自動創(chuàng)建的基本包裝類型的對象,則只存在于一行代碼的執(zhí)行瞬間,然后立即被銷毀。這意味著我們不能在運(yùn)行時(shí)為基本類型值添加屬性和方法。來看下面的例子:

var sl="some text":

sl.color="red";

alert (sl.color); //undefined

在此,第二行代碼試圖為字符串sl添加一個(gè)color屬性。但是,當(dāng)?shù)谌写a再次訪問sl時(shí),其color屬性不見了。問題的原因就是第二行創(chuàng)建的String對象在執(zhí)行第三行代碼時(shí)已經(jīng)被銷毀了。第三行代碼又創(chuàng)建自己的String對象,而該對象沒有color屬性。

當(dāng)然,可以顯武地調(diào)用Boolean、Number和String來創(chuàng)建基本包裝類型的對象。不過,南昌網(wǎng)站建設(shè)公司技術(shù)員認(rèn)為應(yīng)該在絕對必要的情況下再這樣做,因?yàn)檫@種做法很容易讓人分不清自己是在處理基本類型還是引用類型的值。對基本包裝類型的實(shí)例調(diào)用typeof會返回"object",而且所有基本包裝類型的對象都會被轉(zhuǎn)換為布爾值true。

盡管我們不建議顯式地創(chuàng)建基本包裝類型的對象,但它們操作基本類型值的能力還是相當(dāng)重要的。而每個(gè)基本包裝類型都提供了操作相應(yīng)值的便捷方法。

希望對廣大站長或網(wǎng)站建設(shè)公司或從事企業(yè)網(wǎng)站建設(shè)的團(tuán)隊(duì)有所幫助,如對此不太理解的,可以與南昌網(wǎng)絡(luò)公司百恒網(wǎng)絡(luò)技術(shù)部聯(lián)系。我們很高與廣大站長和網(wǎng)站建設(shè)公司技術(shù)人員分享我們的技術(shù)和經(jīng)驗(yàn)。


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×
子长县| 汾西县| 惠州市| 华安县| 顺义区| 惠安县| 安塞县| 阿克苏市| 鄂州市| 聊城市| 双桥区| 张家界市| 金乡县| 特克斯县| 游戏| 江永县| 高雄县| 镇雄县| 富川| 崇州市| 湟中县| 得荣县| 崇左市| 中江县| 玉山县| 萨嘎县| 德化县| 甘谷县| 清新县| 延川县| 漳浦县| 开封县| 金湖县| 三门县| 镶黄旗| 阜城县| 洛南县| 贡嘎县| 太白县| 南京市| 陆丰市|