久久久久久久av_日韩在线中文_看一级毛片视频_日本精品二区_成人深夜福利视频_武道仙尊动漫在线观看

JavaScript之包裝對象

JavaScript對象是一種復合值:它是屬性和已命名值的集合。通過quot;.quot;符號來引用屬性值。當屬性值是一個函數時,稱為方法。,HTML5中國,中國最大的HTML5中文門戶。
5.jpg

  JavaScript對象是一種復合值:它是屬性和已命名值的集合。通過"."符號來引用屬性值。當屬性值是一個函數時,稱為方法。

  ①一段你常用但卻未必明白其真正底層原理的代碼:
  1. var s = "hello world!";
  2. var word = s.substring(s.indexOf(" ")+1,s.length);
復制代碼

  如前面所說,這里變量s只是一個字符串原始類型,它怎么會有屬性(s.length)和方法(s.indexOf()、 s.substring())呢?沒錯,這正跟我們正要介紹的包裝對象有關。原因是:只要引用了字符串s的屬性,JavaScript就會將字符串值通過調用new String(s)的方式轉換成對象,這個對象繼承了字符串(String)對象的方法,并被用來處理屬性的引用。一旦屬性引用結束,這個新創建的對象就會被銷毀。

  同字符串一樣,數字和布爾值也有各自的方法:通過Number()和Boolean()構造函數創建一個臨時對象。存取字符串、數字或布爾值的屬性時創建的臨時對象就是包裝對象。5種原始類型中的剩余兩種null和undefined沒有包裝對象:訪問它們的屬性會造成一個類型錯誤(Uncaught TypeError)。明白了上面的代碼,那么再看如下代碼:
  1. var s = "test";
  2. s.len = 4;//給它設置一個屬性
  3. var t = s.len;
復制代碼

  不認真的同學這里就會認為最后t就是等于4了。難道最后t不等于4嗎?是的,最后t的值是undefined。想知道為什么請看繼續看解析:原來以這里第二行代碼只是創建了一個臨時字符串對象,并給len屬性賦值為4,隨即銷毀這個對象。而第三行又是通過原始字符串s創建一個新字符串對象(這個不是第二行代碼創建的對象,第二行代碼創建的對象已經被銷毀了)并嘗試讀取其len屬相,這個屬性自然不存在,因此表達式的結果為undefined。這段代碼說明了在讀取字符串、數字和布爾值的屬性值或方法(實際上是它們對應包裝對象的屬性值或方法)表現的像對象一樣。但如果你試圖給屬性賦值,則會忽略這個操作:修改只是發生在臨時對象身上,而這個臨時對象并不會繼續保留下來。

  注意:可通過String(),Number(),Boolean()構造函數來顯示創建包裝對象:
  1. var s = "test",n=1,b=true;//一個字符串、數字和布爾值
  2. var S = new String(s);//一個字符串對象
  3. var N = new Number(n);//一個數值對象
  4. var B = new Boolean(b);//一個布爾對象
復制代碼

  JavaScript會在必要時將包裝對象轉換成原始值,因此上段代碼中的對象S、N和B常常但不總是表現的和值s、n和b一樣。"=="等于運算符將原始值和其包裝對象視為相等,但“===”全等運算將它們視為不等。通過typeof運算符也可以看到原始值和其包裝對象的不同:

  ①typeof(s);  ->"string"
  typeof(S);  ->"object"

  ②typeof(n);  ->"string"
  typeof(N);  ->"object"

  ③typeof(b);  ->"string"
  typeof(B);  ->"object"

  本文作者:Craftsman_Gao
   原文鏈接:http://www.cnblogs.com/craftsman ... /07/08/4631501.html
   本站中的所有文章僅以學習和交流為目的,如果我們的工作有侵犯到您的權益,請及時聯系站長QQ:2601929995,我們會在第一時間進行處理!


【網站聲明】本站除付費源碼經過測試外,其他素材未做測試,不保證完整性,網站上部分源碼僅限學習交流,請勿用于商業用途。如損害你的權益請聯系客服QQ:2655101040 給予處理,謝謝支持。

相關文檔推薦

由于實際運行環境是在瀏覽器中,因此性能還取決于JavaScript解釋器的效率,指定的FPS幀速在低性能解釋器中可能不會達到,所以這部分不是開發者能夠決定的,開發者能作的是盡可能通
本文將使用HTML5提供的VideoAPI做一個自定義的視頻播放器,需要用到HTML5提供的video標簽、以及HTML5提供的對JavascriptAPI的擴展。,HTML5中國,中國最大的HTML5中文門戶。
隨著 Hybrid 應用的豐富,HTML5 工程師們已經不滿足于把桌面端體驗簡單移植到移動端,他們覬覦移動原生應用人性化的操作體驗,特別是原生應用與生俱來的豐富的手勢系統。HTML5 沒有提
你想要在自己網站上分享一個產品,或者是一個作品集,又或者僅僅只是一個靈感。在你發布到網上之前,你想讓它看起來有吸引力,專業,或者至少得看起來像那么回事。那么你接下
H5廣告,包括H5廣告的設計流程,究竟有什么講究,和階段。為了能幫助更多的人了解H5廣告,我專門做了一個講義。同時,也讓我意外的收到了非常好反饋和認!這是對我的極大鼓勵!我的
本文主要內容有:框架與組件、構建生態、開發技巧與調試、html、css與重構、native/hybrid/桌面開發、前端/H5優化、全棧/全端開發、研究實驗、數據分析與監控、其它軟技能、前端技術網
主站蜘蛛池模板: 欧美日韩三级 | 日日骚网 | 日韩欧美在线一区 | 亚洲国产精品第一区二区 | 中文字幕精品视频 | 久操国产| 在线高清免费观看视频 | 成人深夜福利网站 | 97碰碰碰| 在线观看免费观看在线91 | 久久蜜桃av一区二区天堂 | 国产免费一区二区三区 | 在线视频中文字幕 | 日韩一区二区三区在线 | 欧美精品一区二区在线观看 | 日韩中文字幕 | 久久婷婷国产香蕉 | 97影院在线午夜 | 91 在线| 91精品综合久久久久久五月天 | 欧美性生活网 | 国产在线播放一区二区三区 | 久久亚洲欧美日韩精品专区 | 一级片网址 | jlzzjlzz国产精品久久 | 久久小视频 | 国产精品免费福利 | 99久久婷婷国产综合精品首页 | 美女福利视频一区 | 欧美日韩在线观看视频 | 国产亚洲精品成人av久久ww | 午夜播放器在线观看 | 性大毛片视频 | 午夜精品久久久久久久久久久久久 | 久久久久亚洲精品 | 亚洲免费精品一区 | www.久久精品视频 | 国产精品成人一区二区三区夜夜夜 | 久久精品久久久久久 | 狠狠干影院 | 久久久久国产一级毛片 |