javascript包裝對象的用法

    時間:2024-09-02 02:10:43 JavaScript 我要投稿
    • 相關推薦

    javascript包裝對象的用法

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

      參考以下代碼:

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

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

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

      比如以下代碼:

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

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

      存取字符串、數字或布爾值的屬性時臨時創建臨時對象稱為包裝對象。

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

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

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

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

    【javascript包裝對象的用法】相關文章:

    Javascript的this用法簡述08-15

    javascript面向對象中的對象怎么理解09-02

    Javascript中typeof 用法歸納09-27

    javascript克隆對象深度介紹07-25

    Javascript函數的定義和用法分析08-15

    javascript分析運算符用法08-07

    JavaScript中的三種對象10-24

    使用ajax操作JavaScript對象的方法09-28

    關于javascript對象之內置和對象Math的使用方法10-08

    JavaScript高級程序設計:本地對象Array10-22

    91久久大香伊蕉在人线_国产综合色产在线观看_欧美亚洲人成网站在线观看_亚洲第一无码精品立川理惠

      中文字幕第2页 | 亚洲精品小视频 | 五月天综合网亚洲综合天堂网 | 亚洲欧洲中文字幕 | 色妞综合一区二区三区 | 亚洲精品乱码久久久久66 |