大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) hot資訊 JavaScript類型詳解

JavaScript類型詳解

更新時(shí)間:2022-02-18 10:36:44 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽950次

簡(jiǎn)單來(lái)說(shuō),類型有助于對(duì)可以執(zhí)行常見(jiàn)操作的相似值進(jìn)行分組。根據(jù)我們的數(shù)學(xué)知識(shí),很容易確定可以對(duì)序列11、3、67和中的值求和89。同時(shí),我們知道我們不能將下面的序列JS, is, 和中的值相乘cool,但是我們可以很自然地合并它們。數(shù)字和字符串是最流行的類型。

在編程語(yǔ)言中,類型決定了為保存值分配的內(nèi)存量。值的類型還決定了允許對(duì)其執(zhí)行的操作和方法。

JavaScript 有六種原語(yǔ)類型:string、number、undefined、null、boolean和symbol。還有一個(gè)復(fù)合類型或object。有趣的是,原始類型是不可變的并且沒(méi)有屬性。例如,由于String對(duì)象的原因,您可以檢索字符串的長(zhǎng)度。代碼像魔術(shù)一樣由解釋器"a".length進(jìn)行評(píng)估。new String("a").length還有對(duì)象Number、Boolean和Symbol,它們也將屬性添加到自己的基元中。

JavaScript 中的類型看起來(lái)簡(jiǎn)單而無(wú)用,但了解它們的工作原理很重要。它們有助于更好地理解語(yǔ)言及其行為。

動(dòng)態(tài)類型檢查

類型是編程語(yǔ)言的主要基礎(chǔ)之一。JavaScript 中的許多執(zhí)行錯(cuò)誤都是類型錯(cuò)誤。例如,當(dāng)我們嘗試將 a 乘以 a 時(shí)number,我們會(huì)以返回string的形式得到一個(gè)靜默錯(cuò)誤。Not a Number您是否曾經(jīng)調(diào)用過(guò)函數(shù)并收到錯(cuò)誤undefined is not a function?當(dāng)我們嘗試訪問(wèn)未定義的屬性時(shí),就會(huì)發(fā)生這種情況。由于 Javascript 無(wú)法找到該屬性,因此它返回其默認(rèn)后備值:undefined.

另一個(gè)常見(jiàn)的與類型相關(guān)的錯(cuò)誤是當(dāng)我們嘗試從值為nullor的值更改或訪問(wèn)屬性時(shí)undefined。請(qǐng)記住,這里沒(méi)有構(gòu)造函數(shù)喜歡Undefined或Null拯救我們。我們最終得到一個(gè)錯(cuò)誤。更不用說(shuō)我們錯(cuò)誤的值類型this并嘗試禁止的東西的所有時(shí)間。

一個(gè)好的類型系統(tǒng)可以幫助我們避免這些常見(jiàn)的錯(cuò)誤。根據(jù)定義,JavaScript 是一種解釋型和動(dòng)態(tài)語(yǔ)言,它要求類型系統(tǒng)在代碼執(zhí)行期間工作。該語(yǔ)言還嘗試通過(guò)靜默轉(zhuǎn)換值類型來(lái)提供幫助。當(dāng)您嘗試將一個(gè)數(shù)字與包含一個(gè)數(shù)字的 a 相加2時(shí),它對(duì)您有利。:sweat_smile:'3'string類型更改或強(qiáng)制是許多開(kāi)發(fā)人員切換到嚴(yán)格使用===來(lái)檢查值的相等性的原因,但它比修復(fù)強(qiáng)制,不是癥狀解釋的要多得多。

本質(zhì)上,JavaScript 中的類型是一個(gè)移動(dòng)的目標(biāo),很難擊中它們。此外,由于語(yǔ)言是弱類型的,并且該類型可能會(huì)改變,因此無(wú)法預(yù)測(cè)或確保變量類型。

靜態(tài)類型檢查

靜態(tài)類型檢查確保程序是正確的,至少在執(zhí)行之前是靜態(tài)的。在 JavaScript 中,還有其他方法可以注釋值類型。它可以避免你對(duì)試圖以瘋狂的方式操作不同類型的用戶產(chǎn)生錯(cuò)誤。

下面的代碼計(jì)算 a 的價(jià)格Product。從第 4 行到第 6 行,我們使用Flow注釋定義Product屬性的類型。其余代碼是純 JavaScript,但請(qǐng)注意第 19 行的值不兼容。這是一種賦予您價(jià)值的代碼。幸運(yùn)的是,F(xiàn)low 分析器會(huì)在編寫(xiě)代碼時(shí)警告您了解潛在的錯(cuò)誤。

/* @flow */
class Product {
  name: string
  cost: number
  tax: number
  constructor (name, cost, tax) {
    this.name = name
    this.cost = cost
    this.tax = tax
  }
  price() {
    return this.cost * (1 + this.tax)
  }
}
const item = new Product("Banana", 2, "%30")

Flow 批注允許您定義所有不同的原語(yǔ)、 對(duì)象、構(gòu)造函數(shù)/類(Date、、Array...),甚至是字面量。有一些高級(jí)類型,比如任何接受所有類型的類型;可以為空或可能,以指示類型或null;以及 類型和接口的聯(lián)合和交集(更多關(guān)于下面的內(nèi)容)。

恕我直言,最強(qiáng)大的注釋是新類型或別名,它們?cè)试S您為一組類型命名以獲取專有屬性;定義上下文所關(guān)注的一組非排他性的重要屬性或方法的接口;和泛型。最后一個(gè),允許您定義數(shù)組值的類型或Promise例如結(jié)果的類型。

根據(jù)Kris Jenkins的說(shuō)法,通過(guò)類型定義,可以預(yù)測(cè)設(shè)計(jì)問(wèn)題。返回許多不同類型的函數(shù)可能意味著計(jì)劃中的錯(cuò)誤。新類型的創(chuàng)建有助于程序員定義問(wèn)題的實(shí)體。在任何情況下,類型注釋都是編寫(xiě)更安全、更易理解的代碼的好資源。

以上就是關(guān)于“JavaScript類型詳解”的介紹,大家如果對(duì)此比較感興趣,想了解更多相關(guān)知識(shí),不妨來(lái)關(guān)注一下動(dòng)力節(jié)點(diǎn)的Java在線學(xué)習(xí),里面的課程內(nèi)容從入門(mén)到精通,很適合沒(méi)有基礎(chǔ)的小伙伴學(xué)習(xí),希望對(duì)大家能夠有所幫助。

提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-04-24 搶座中
  • 全國(guó)校區(qū) 2025-05-15 搶座中
  • 全國(guó)校區(qū) 2025-06-05 搶座中
  • 全國(guó)校區(qū) 2025-06-26 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 精品国产看高清国产毛片 | 我想看一级黄色毛片 | 国产欧美日韩综合二区三区 | 99视频全部免费精品全部四虎 | 日本xoxo在线观看免费 | 国产成人一区二区三区高清 | 手机看片日韩高清国产欧美 | 免费国产视频在线观看 | 精品国产91久久久久久久a | 欧美精品成人一区二区视频一 | 国产亚洲精品麻豆一区二区 | 看片福利| 伊人久久综在合线亚洲91 | 亚洲一级毛片免费在线观看 | 午夜深夜福利网址 | 免费在线一级片 | 欧美色xxx | 中文字幕久精品免费视频 | 中文字幕久久久久 | 亚洲最大激情网 | 五月婷婷激情网 | α毛片 | 孕妇孕妇aaaaa级毛片视频 | 日韩成人免费视频 | 亚洲综合香蕉 | 亚洲精品乱码久久久久 | 一级日韩| 久久精品国产三级不卡 | 欧美亚洲国产另类 | 国产国语一级a毛片高清视频 | 日韩在线2020专区 | 国产成人综合亚洲 | 国产福利一区二区在线精品 | 免费观看欧美一级毛片 | 全部免费毛片 | 国产精选在线播放 | a级成人毛片久久 | 在线观看国产一区 | 欧美激情久久久久久久大片 | 久久天天躁日日躁狠狠躁 | 国产在线原创剧情麻豆 |