国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

javascript包裝對象實例分析

2024-05-06 16:17:44
字體:
供稿:網(wǎng)友

這篇文章主要介紹了javascript包裝對象,實例分析分析了javascript對象操作的技巧,具有一定參考借鑒價值,需要的朋友可以參考下

本文實例講述了javascript包裝對象用法。分享給大家供大家參考。具體分析如下:

js對象是一種復(fù)合值:它是屬性或已命名值得集合。

參考以下代碼:

 

 
  1. var s = "hello world"
  2. var len = s.length; 

在該例子中,s是字符串,而字符串不是對象,但為何會有屬性呢?其實只要引用了字符串s的屬性,js就會將字符串通過調(diào)用new String(s)的方式轉(zhuǎn)換為對象,該對象繼承了字符串的方法,并被用來處理屬性的引用;一旦屬性引用結(jié)束,這個新創(chuàng)建的對象就會被銷毀(在實現(xiàn)上并不一定創(chuàng)建或銷毀這個臨時對象,但整個過程看來是這樣)。

同字符串一樣,數(shù)字和布爾值也具有各自的方法:通過Number()單核Boolean()構(gòu)造函數(shù)創(chuàng)建臨時對象,這些方法的調(diào)用都是來自于這個臨時對象;然而null和undefined沒有包裝對象:訪問他們的屬性會造成類型錯誤。

比如以下代碼:

 

 
  1. var s0 = "hello world"
  2. s0.len = 100; 
  3. var t = s.len; //t的值將為undefined 

因為第2行創(chuàng)建臨時對象后,立即將其銷毀;第三行通過原始的字符串值創(chuàng)建一個新字符串對象,嘗試讀取其len屬性,自然不存在。這段代碼說明在讀取字符串、數(shù)字和布爾值的屬性值或方法時,表現(xiàn)的像對象一樣。但如果你試圖給其屬性賦值,則會忽略這個操作:修改只是發(fā)生在臨時對象上,而這個臨時對象并未繼續(xù)保留下來。

存取字符串、數(shù)字或布爾值的屬性時臨時創(chuàng)建臨時對象稱為包裝對象。

我們可以顯示建立一個字符串對象然后增添它的屬性,自然該屬性會一直保留下來:

 

 
  1. var str = "hello world"
  2. var objs = new String(str); 
  3. objs.len = 100; 
  4. var t = objs.len; //t將被賦值為100 

js會在必要時將包裝對象轉(zhuǎn)換為原始值因此顯示創(chuàng)建的對象和其對應(yīng)的原始值常常但不總是表現(xiàn)的一樣。==運算符將原始值和其包裝對象視為相等;但===全等運算符將他們視為不等;另外通過typeof運算符可以看到原始值和包裝對象的不同。

希望本文所述對大家的javascript程序設(shè)計有所幫助。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 汝阳县| 旬阳县| 巍山| 麦盖提县| 叙永县| 日喀则市| 措美县| 枣庄市| 云龙县| 东丽区| 齐河县| 弥渡县| 巴东县| 富民县| 墨竹工卡县| 文昌市| 肥东县| 孙吴县| 黄山市| 平定县| 贺州市| 奉贤区| 茂名市| 铜陵市| 盐边县| 乾安县| 宁乡县| 乌兰县| 偏关县| 南康市| 柳州市| 临湘市| 尼勒克县| 靖江市| 故城县| 东丽区| 信阳市| 甘南县| 屏山县| 阿巴嘎旗| 苍山县|