公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識(shí)交流 PMS教程 CRM教程 開(kāi)發(fā)文檔 其他文檔  
 
網(wǎng)站管理員

分不清Boolean和boolean,我被同事diss了!

admin
2025年4月11日 16:43 本文熱度 198

背景

這幾天寫(xiě)代碼,遇到一個(gè)不確定的知識(shí)點(diǎn):我在vue的props中如何給一個(gè)屬性定義小寫(xiě)的bolean,代碼就會(huì)報(bào)錯(cuò)

但是大寫(xiě)的Bolean就沒(méi)問(wèn)題

由于我在其他地方我看大小寫(xiě)都可以,有點(diǎn)疑惑,于是想去請(qǐng)教一下同事。然而,沒(méi)想到同事上來(lái)就diss我:

這么基礎(chǔ)的知識(shí)你都不清楚?這兩個(gè)根本就不是一個(gè)東西!

我有點(diǎn)不開(kāi)心,想反駁一下:

這兩個(gè)不都是描述類型的東西嗎?我給你看其他地方的代碼,這兩個(gè)都是可以混用的!

同事有點(diǎn)不耐煩,說(shuō)道:大姐,boolean是TS中的類型聲明,Boolean是JavaScript 的構(gòu)造函數(shù),根本不是一個(gè)東西吧!

行吧,我也剛?cè)腴T(mén)不久,確實(shí)不了解這個(gè)東西,只能強(qiáng)忍委屈,對(duì)同事說(shuō)了聲謝謝,我知道了!

然后,我好好的學(xué)習(xí)了一下Boolean和boolean的知識(shí),終于搞明白他們的區(qū)別了。

Boolean和boolean

本質(zhì)區(qū)別

同事說(shuō)的很對(duì),他們兩個(gè)的本質(zhì)區(qū)別就是一個(gè)是JavaScript語(yǔ)法,一個(gè)是TypeScript語(yǔ)法,這意味著非TypeScript項(xiàng)目是不存在boolean這個(gè)東西的。

Boolean 是 JavaScript 的構(gòu)造函數(shù)

Boolean 是 JavaScript 中的內(nèi)置構(gòu)造函數(shù),用于布爾值的類型轉(zhuǎn)換或創(chuàng)建布爾對(duì)象。

js
typeof Boolean; // "function"

boolean 是 TypeScript 的基本類型

  • 如果使用了 TypeScript,boolean 是 TypeScript 中的基本類型,用于靜態(tài)類型檢查。
  • 在 JavaScript 的運(yùn)行時(shí)上下文中,boolean 并不存在,僅作為 TypeScript 的靜態(tài)檢查標(biāo)識(shí)。
js
typeof boolean; // ReferenceError: boolean is not defined

TS中作為類型的Boolean和boolean

在TypeScript中,Boolean和boolean都可以用于表示布爾類型

js
export interface ActionProps { checkStatus: Boolean } export interface RefundProps { visible: boolean }

但是,他們存在一些區(qū)別

boolean

  • boolean 是 TypeScript 的基本類型,用于定義布爾值。
  • 它只能表示 truefalse
  • 編譯后 boolean 不會(huì)存在于 JavaScript 中,因?yàn)樗鼉H用于靜態(tài)類型檢查。
js
//typescript let isActive: boolean; // 只能是 true 或 false isActive = true;       // 正確 isActive = false;      // 正確 isActive = new Boolean(true); // 錯(cuò)誤,不能賦值為 Boolean 對(duì)象

Boolean

  • Boolean 是 JavaScript 的內(nèi)置構(gòu)造函數(shù),用于將值顯式轉(zhuǎn)換為布爾值或創(chuàng)建布爾對(duì)象(Boolean 對(duì)象)。
  • 它是一個(gè)引用類型,返回的是一個(gè)布爾對(duì)象,而不是基本的布爾值。
  • 在 TypeScript 中, Boolean 表示構(gòu)造函數(shù)類型,而不是基本的布爾值類型

js
//typescript let isActive: Boolean; // 類型是 Boolean 對(duì)象 isActive = new Boolean(false); // 正確,賦值為 Boolean 對(duì)象 isActive = true; // 正確,基本布爾值也可以兼容

關(guān)鍵區(qū)別

特性booleanBoolean
定義TypeScript 的基本類型JavaScript 的構(gòu)造函數(shù)
值類型只能是 truefalse是一個(gè)布爾對(duì)象
推薦使用場(chǎng)景用于定義基本布爾值類型很少用,除非需要顯式構(gòu)造布爾對(duì)象
運(yùn)行時(shí)行為不存在,只在編譯時(shí)有效在運(yùn)行時(shí)是 JavaScript 的構(gòu)造函數(shù)
性能高效,直接操作布爾值對(duì)象包裝,性能較差

為什么盡量避免使用 Boolean

類型行為不一致Boolean 是對(duì)象類型,而不是基本值類型。這會(huì)在邏輯運(yùn)算中導(dǎo)致混淆:

js
const flag: Boolean = new Boolean(false); if (flag) {  console.log("This will run!"); // 因?yàn)閷?duì)象始終為 truthy }

性能開(kāi)銷更大Boolean 會(huì)創(chuàng)建對(duì)象,而 boolean 是直接操作基本類型。

vue中的Boolean與boolean

Vue 的運(yùn)行時(shí)框架無(wú)法識(shí)別 boolean 類型,它依賴的是 JavaScript 的內(nèi)置構(gòu)造函數(shù)(如 BooleanStringNumber 等)來(lái)檢查和處理 props 類型。

因此,props的Type只能是BooleanStringNumber

但是如果vue中開(kāi)啟了ts語(yǔ)法,就可以使用boolean 表示類型了

js
<script lang="ts" setup>   interface IProps {    photoImages?: string[],    isEdit?: boolean } const props = withDefaults(defineProps<IProps>(), {    photoImages: () => [],    isEdit: true }) </script>

作者:快樂(lè)就是哈哈哈
鏈接:https://juejin.cn/post/7439576043223203892
來(lái)源:稀土掘金
著作權(quán)歸作者所有。商業(yè)轉(zhuǎn)載請(qǐng)聯(lián)系作者獲得授權(quán),非商業(yè)轉(zhuǎn)載請(qǐng)注明出處。

該文章在 2025/4/12 18:00:23 編輯過(guò)
關(guān)鍵字查詢
相關(guān)文章
正在查詢...
點(diǎn)晴ERP是一款針對(duì)中小制造業(yè)的專業(yè)生產(chǎn)管理軟件系統(tǒng),系統(tǒng)成熟度和易用性得到了國(guó)內(nèi)大量中小企業(yè)的青睞。
點(diǎn)晴PMS碼頭管理系統(tǒng)主要針對(duì)港口碼頭集裝箱與散貨日常運(yùn)作、調(diào)度、堆場(chǎng)、車隊(duì)、財(cái)務(wù)費(fèi)用、相關(guān)報(bào)表等業(yè)務(wù)管理,結(jié)合碼頭的業(yè)務(wù)特點(diǎn),圍繞調(diào)度、堆場(chǎng)作業(yè)而開(kāi)發(fā)的。集技術(shù)的先進(jìn)性、管理的有效性于一體,是物流碼頭及其他港口類企業(yè)的高效ERP管理信息系統(tǒng)。
點(diǎn)晴WMS倉(cāng)儲(chǔ)管理系統(tǒng)提供了貨物產(chǎn)品管理,銷售管理,采購(gòu)管理,倉(cāng)儲(chǔ)管理,倉(cāng)庫(kù)管理,保質(zhì)期管理,貨位管理,庫(kù)位管理,生產(chǎn)管理,WMS管理系統(tǒng),標(biāo)簽打印,條形碼,二維碼管理,批號(hào)管理軟件。
點(diǎn)晴免費(fèi)OA是一款軟件和通用服務(wù)都免費(fèi),不限功能、不限時(shí)間、不限用戶的免費(fèi)OA協(xié)同辦公管理系統(tǒng)。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 国产精品成人av激情在线 | 国产一区二区三区正品 | 国产精品人成人免 | 东京热蜜桃一区二区 | 成人午夜福利免费无码视频 | 18禁止免费观看试看免费大片 | 精品日韩妇女视频在线观看 | 精品国产自线午夜福利 | 国产午夜精品久久久久免费视频 | 91精品国产91久久久久 | 精品久久午夜福利 | 国产极品美女高潮无套在线 | 国产日韩欧美另类 | 3d动漫精品啪啪一区二区免费 | 国产精品伦理在线 | 国产欧美日韩专区发布 | 国产三级a在线观看 | 精品日韩传电影 | 97人妻无码专区 | 国产主播福利精品中文 | 99精品日韩 | 国产综合亚洲欧美另类久久久精品 | 国产一区二区三区h55555 | 国产精品v毛片免费软件 | 国产v片在线播放免费无码 国产v片在线播放免费无遮挡 | 囯产极品美女高潮无套久久久 | 精品成在人线aⅴ无码免费看 | av无码精品久久久久精品免费 | 高清亚洲日韩av国产精品成人无 | 69精品无码一区二区 | 国产精品日韩无码中文字幕 | 成人a级视频在 | 国产大片中文字幕 | 国产精品夜色电影 | 国产精品国产三级国产普通话对白 | 国产高清视亚洲一区二区 | 91青青青青国产在线观看 | 国产一区二区在线观看视频 | 国产丝袜肉丝视频 | 国产无码一二三区中文字幕 | 国产精品日韩无码中文字幕 |