最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

JavaScript中的類型、值和變量

2023-08-20 09:19 作者:曉楓Motivation  | 我要投稿

JavaScript的類型可以分為兩個主要組別:原始類型和對象類型。JavaScript的原始類型包括數(shù)字、文本字符串(簡稱為字符串)和布爾值(也稱為布爾值)。

特殊值nullundefined也是原始值,但它們不是數(shù)字、字符串或布爾值。這兩個值通常被視為各自類型的獨(dú)特成員。ES6引入了另一種特殊類型,稱為Symbol,用于語言擴(kuò)展而不破壞向后兼容性。

在JavaScript中,除了數(shù)字、字符串、布爾值、Symbol、nullundefined之外的任何值都是對象。對象是對象類型的成員,它們是屬性的集合,每個屬性都有一個名稱和一個值(可以是原始值或另一個對象)。還有一個非常特殊的對象,稱為全局對象。

(程序員的軟技能:ke.qq.com/course/6034346)

常規(guī)JavaScript對象是無序的命名值的集合。語言本身還定義了一種特殊的對象,稱為數(shù)組。數(shù)組表示有序的數(shù)值集合。JavaScript包括用于操作數(shù)組的特殊語法,數(shù)組本身展現(xiàn)出與常規(guī)對象不同的行為。

除了基本對象和數(shù)組之外,JavaScript還定義了其他幾種有用的對象類型。Set對象表示值的集合,而Map對象表示鍵值映射。各種“類型化數(shù)組”類型便于對字節(jié)數(shù)組和其他二進(jìn)制數(shù)據(jù)進(jìn)行操作。RegExp類型表示文本模式,并在字符串上支持復(fù)雜的匹配、搜索和替換操作。Date類型表示日期和時間,支持基本日期計(jì)算。Error類型及其子類表示在JavaScript代碼執(zhí)行過程中可能發(fā)生的錯誤。

將JavaScript與靜態(tài)語言區(qū)分開的是,函數(shù)和類不僅僅是語法,它們本身是可以由JavaScript程序操作的值。與JavaScript中的其他非原始值一樣,函數(shù)和類也是特殊類型的對象。

在內(nèi)存管理方面,JavaScript解釋器執(zhí)行自動垃圾回收。這意味著JavaScript程序員通常不需要關(guān)心對象或其他值的銷毀和釋放。當(dāng)一個值變得不可訪問,或者不再被程序引用,解釋器知道它不再需要,并自動釋放它占用的內(nèi)存(盡管JavaScript程序員有時應(yīng)該謹(jǐn)慎,以防止值比預(yù)期的持續(xù)時間更長,變得無法回收)。

JavaScript支持面向?qū)ο蟮木幊田L(fēng)格。實(shí)質(zhì)上,這意味著不要為不同類型的值定義全局函數(shù),而是讓這些類型定義操作值本身的方法。例如,要對數(shù)組的元素進(jìn)行排序,您不需要將數(shù)組傳遞給sort()函數(shù);相反,您可以在數(shù)組a上調(diào)用sort()方法:

從技術(shù)角度來看,只有JavaScript對象具有方法。但是,數(shù)字、字符串、布爾值和符號似乎也有方法。在JavaScript中,只有nullundefined不能調(diào)用方法。

JavaScript的對象類型是可變的,而其原始類型是不可變的??勺冾愋涂梢愿?;例如,JavaScript程序可以修改對象的屬性和數(shù)組元素。數(shù)字、布爾值、符號、nullundefined是不可變的。例如,修改數(shù)字沒有意義。字符串可以被視為字符數(shù)組,您可能期望它們是可變的。但是,在JavaScript中,字符串也是不可變的。雖然您可以使用索引訪問字符串中的字符,但JavaScript不提供修改字符串中現(xiàn)有字符的方法。

JavaScript自由地轉(zhuǎn)換不同類型的值。例如,如果程序期望一個字符串,但您提供了一個數(shù)字,數(shù)字將自動轉(zhuǎn)換為字符串。同樣,如果在期望布爾值的地方使用非布爾值,JavaScript將相應(yīng)地進(jìn)行轉(zhuǎn)換。

JavaScript中的這種自由值轉(zhuǎn)換影響了等式的定義,等式運(yùn)算符==執(zhí)行類型強(qiáng)制轉(zhuǎn)換(盡管在實(shí)踐中,等式運(yùn)算符==通常被避免,而使用嚴(yán)格等式運(yùn)算符===,它不執(zhí)行類型強(qiáng)制轉(zhuǎn)換)。

常量和變量允許我們在程序中使用名稱引用值。常量使用const聲明,變量使用let(或在較舊的JavaScript代碼中使用var)聲明。JavaScript的常量和變量是無類型的;它們的聲明不限制它們可以保存的值的類型。

(程序員的軟技能:ke.qq.com/course/6034346)


JavaScript中的類型、值和變量的評論 (共 條)

分享到微博請遵守國家法律
凤山市| 天等县| 河曲县| 斗六市| 射洪县| 小金县| 尖扎县| 双城市| 新泰市| 临朐县| 安福县| 色达县| 中牟县| 任丘市| 高要市| 电白县| 沈阳市| 松溪县| 金坛市| 旬邑县| 当涂县| 米泉市| 黑水县| 赤城县| 板桥市| 定安县| 龙口市| 栾城县| 民乐县| 滦平县| 喀喇沁旗| 蒙自县| 开封县| 封开县| 临海市| 广河县| 达尔| 吉木乃县| 贵港市| 松溪县| 麻城市|