js學習筆記之封裝對象

來源:互聯網
上載者:User

標籤:字串   ons   cccccc   rds   語言   物件導向語言   代碼   search   undefined   

JavaScript封裝對象

近日有時間,閑下來好好學習原生js

JavaScript是一門物件導向語言,使用”.”就可以訪問對象的屬性和方法,而基本類型(null, undefined, bool, number, string)應該是實值型別,怎麼會有屬性和方法。

但是 

var s="string";console.log(s.length);//6console.log(s.indexOf(‘i‘));//3

於是去翻閱資料

JavaScript可以很靈活的將一種類型轉換為另一種了類型,當引用了字串s的屬性,JavaScript就會將字串值通過調用new String(s)的方式轉換成對象,這個對象繼承了字串的方法並用來處理屬性的引用。上面代碼在使用的實際上是String對象的length屬性和indexOf方法,一旦屬性引用結束,這個新建立的對象就會銷毀。

這也是頻繁處理字串效率低的一個原因。

String

String對象擁有很多方法

  • charAt
  • charCodeAt
  • concat
  • fromCharCode
  • indexOf
  • lastIndexOf
  • match
  • replace
  • search
  • slice
  • split
  • substr
  • substring
  • toLowerCase
  • toUpperCase
var s=‘string‘;s.words=6;console.log(s.words);

執行這段代碼,輸出結果是undefined。

第二行,調用s字串的屬性,於是JavaScript建立一個臨時字串對象,並對該words屬性賦值,隨後銷毀這個對象。

第三行,嘗試讀取s的屬性,又會建立一個新的臨時字串對象,這個對象自然沒有words屬性。

在讀取字串的屬性值的識貨,表現得像對象一樣,但如果你給其賦值,則會被忽略。修改只是發生在臨時對象上,而這個對象隨後會被銷毀。

存取字串,數字或布爾值的屬性時建立的臨時對象稱為“封裝對象”

 

js學習筆記之封裝對象

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.