Equality Operators(嚴格等式VS鬆散等式) | Javascript
理解如何比較值是程式設計的基礎。我們探討了等值運算子 == 和 === 的微妙差異,用範例理解它們的內在細節差異。我們將解開鬆散和嚴格等值比較,當你在編寫更複雜的程式碼中的會有巨大幫助。
在 JavaScript 中,我們有兩個用於比較值的運算子:==(鬆散等值)和 ===(嚴格等值)。這篇文章詳細範例解釋了它們的區別,闡明了何時使用每個運算符。 == 在進行類型強制轉換後檢查相等性,這會讓不同類型最後視為相等,而’===’ 強制執行嚴格相等,確保值和類型都匹配。無論你是在檢查使用者輸入、處理條件還是比較變量,了解這些運算符對於編寫清晰、可靠且無錯誤的程式碼非常重要。
我們一般在開發時,我們要避免使用鬆散的比較,我們應該始終使用嚴謹的比較
- === 嚴謹的比較(包含型別)
- == 鬆散的比較(不包含型別)
See the Pen Equality Operators(嚴格等式VS鬆散等式)-Javascript by lenrich (@lenrich) on CodePen.
範例
'use strict';
const temperature = 25;
const temperatureStr = '25';
console.log(temperature === 25); // true
console.log(temperature === '25'); // false
console.log(temperatureStr == 25); // true
console.log(temperatureStr == '25'); // true
if (temperature > 30) {
console.log('It\'s a hot day! Stay cool.');
} else if (temperature >= 20 && temperature <= 30) {
console.log('The weather is pleasant.');
} else {
console.log('It\'s a bit chilly. Grab a jacket.');
}
// The weather is pleasant.
const city = prompt('Which city do you live in?');
if (city === 'New York') {
console.log('Welcome to the Big Apple!');
} else if (city === 'Paris') {
console.log('Bonjour! Welcome to Paris.');
} else {
console.log(`Greetings from ${city}!`);
}
const isRaining = confirm('Is it raining?');
if (isRaining) {
console.log('Don\'t forget your umbrella!');
} else {
console.log('Enjoy the weather!');
}
Tags