JavaScript: Jak rzutować string na wartość typu boolean?

Opublikowano: 28.03.2023 - tagi: JavaScript Rzutowanie Typ

Boolean jako string

Załóżmy, że backend zwraca dane w takiej postaci:

{
	property1: 'true',
	property2: 'false'
}

Jak widać wartości, zwracana są w postaci ciągu znaków. My potrzebujemy zmienić je w typ boolean. Jak to zrobić?

Jak zmienić string w typ boolean?

Najłatwiej można zrobić to tak:

const stringValue = 'true';
const value = stringValue === 'true'; // true

Ale uwaga na:

'True' === 'true'; // false
'TRUE' === 'true'; // false

Ten problem można rozwiązać na przykład tak:

'True'.toLowerCase() === 'true'; // true
'FALSE'.toLowerCase() === 'true'; // false

Powyższy zapis można jeszcze usprawnić:

String('True').toLowerCase() === 'true'; // true
String('FALSE').toLowerCase() === 'true'; // false

Jest to szczególnie przydatne jeśli nie masz kontroli nad tym, co jest zwracane.