在 JavaScript 中车要,基本類型(基本數(shù)值、基本數(shù)據(jù)類型)是一種既非對(duì)象也無(wú)方法或屬性的數(shù)據(jù)膀捷。
有 7 種原始數(shù)據(jù)類型:
所有基本類型的值都是不可改變的懊亡。但需要注意的是效诅,基本類型本身和一個(gè)賦值為基本類型的變量的區(qū)別。
變量會(huì)被賦予一個(gè)新值离陶,而基本類型不能像數(shù)組稼虎、對(duì)象以及函數(shù)那樣被改變衅檀。
基本類型沒(méi)有方法,但仍然表現(xiàn)得像有方法一樣霎俩。當(dāng)在基本類型上訪問(wèn)屬性時(shí)哀军,JavaScript 自動(dòng)將值裝入包裝器對(duì)象中,并訪問(wèn)該對(duì)象上的屬性打却。例如杉适,"foo".includes("f")
隱式創(chuàng)建了一個(gè) String
包裝對(duì)象,并在該對(duì)象上調(diào)用 String.prototype.includes()
柳击。這種自動(dòng)裝箱行為在 JavaScript 代碼中是無(wú)法觀察到的猿推,但卻是各種行為的一個(gè)很好的心理模型——例如,為什么“改變”基本類型不起作用(因?yàn)?str.Foo = 1
不是賦值給 str
本身的 Foo
屬性捌肴,而是賦值給了一個(gè)臨時(shí)包裝器對(duì)象)蹬叭。