JavaScript Day 3. 变数:布林、undefined、null

开始学习 JavaScript 之後遇到的变数五花八门,不理解用法或是不懂的回传的型态,就很容易会卡的自己不要不要的,因此今天就好好的深入研究变数。

布林值 (Boolean)

简单来说就是 true 和 false,这是它们回传的型态,是由电脑来决定这个跑完的结果。

语意上来说就是,如果这件事是「真的」,就开始做某件事;如果这件事是「假的」,我们就做另外一件事,或者什麽都不做。

譬如:

1.小美在气温 15 度以下时一定会穿上她心爱的棉外套
2.今天气温是 14 度

if(true) {
    console.log("小美穿着外套");
    console.log("她准备出门了");
}else{
    console.log("小美因为太热了,所以不穿外套了");
}

if 的用法也可以伴随布林值,像我这里大部分的 if 练习都是以布林值的形式回传,提供一个例子:

他不确定钱包剩下多少钱
true 小明想要去外面吃饭,他很想吃牛肉面,价格110
false 於是他打开钱包前决定,钱不够就回家吃饭

let wellet = 90;

if (wellet>=110) {
    console.log("去吃牛肉面");
}else {
    console.log("回家");
}

undefined

undefined 和 null 的感觉很相似,但其实又不太一样。undefined 的状态比较像是,当没有被赋予任何值的时候,该变数的预设值即为 undefined,又或者可以说是未定义的意思。

undefined 的特点:

  1. undefined 在经过 typeof undefined 的时候会回传 undefined,所以它的型别就是 undefined。
  2. 如果变数没有提供值,那麽它的预设值就是 undefined。
  3. 要取用一个物件属性或是阵列元素的时候,若这个属性或是元素不存在,会回传 undefined。
  4. 如果一个函数需要输入参数,但使用函数时没有回传参数的话,此时也会回传 undefined。

null

上面说到 undefined 和 null 的感觉很相似,但其实 null 是有值的,它代表的意义是空值,是让开发者来宣告变数为空值。

那麽到底什麽时候我们会需要去宣告一个空值呢?有可能的状态是,本来这个地方是有其他值的,但若我们需要将他清空的时候,就可以给予它一个空值。

范例:

let c = 1234;
c = null;
console.log(c); // 此时 c 的内容会被清空

null 特点:

  1. 在经过 typeof null ,会回传 object 型态。
  2. DOM元素操作时,如果要获取的DOM元素不存在,会回传 null。
  3. null 代表的意义是空值,是让开发者来宣告变数为空值的。

另外补充,undefined 和 null 相似的地方:

  1. 两者皆没有属性和方法,也不能对它们额外增加属性及方法。
  2. 皆为 Falsy Value (虚值)。
  3. 皆为原始型别。

<<:  【Day12】建立React专案并安装Jest,来跑跑看第一个测试吧 -`д´-!

>>:  WordPress 如何更换网站小图示 Favicon

JavaScript Day02 - 变数(1)

变数(variable) Day04 - 变数(01):主要介绍变数的基本定义以及 var 的用法 ...

Day22 - 用 Ruby on Rails 处理台湾证券交易所资料-DB 设计

前言 有了前 2 篇从「台湾证券交易所」取得 CSV 档後,接着要把资料存入 DB,在存入前,需要先...

Label元件字串太长时的解法

缘由: app菜鸟开发者首先被分配到的就是画面布局的部分,想说拉拉元件,设定限制条件,不让画面跑版就...

[day5]API串接-安全签章Sign(二)

安全签章计算(Sigh) 在产出安全签章前必须完成以下任务,要先取得 Nonce、Hash ID、讯...

STM32的开发生态,Cube、HAL库、LL库

这个分享适合刚入门STM32的新手,快速了解STM32的开发生态 我昨天最後讲到我个人建议从标准库学...