ホームページ >ウェブフロントエンド >jsチュートリアル >Type Script の readonly と const の違い

Type Script の readonly と const の違い

王林
王林オリジナル
2024-08-22 18:58:03247ブラウズ

The difference between readonly and const in Type Script

これら 2 つの機能は、両方とも割り当てできないという点で似ています。

正確に説明していただけますか?

この記事では、それらの違いについて説明します。

const は変数への再代入を防ぎます。

この場合、hisName は再割り当てできない変数です。

const hisName = 'Michael Scofield'

hisName = 'Lincoln Burrows'
// → ❌ Cannot assign to 'hisName' because it is a constant.

ただし、プロパティに再割り当てすることはできます。

const hisFamily = {
  brother: 'Lincoln Burrows'
}

hisFamily.brother = ''
// → ⭕️

hisFamily = {
  mother: 'Christina Rose Scofield'
}
// → ❌ Cannot assign to 'hisFamily' because it is a constant.

readonly はプロパティへの再割り当てを防ぎます。

たとえば、readonly で Brother に値を代入しようとすると、コンパイル エラーが発生します。

let hisFamily: { readonly brother: string } = {
  brother: 'Lincoln Burrows'
}

hisFamily.brother = ''
// → ❌ Cannot assign to 'brother' because it is a read-only property.

一方、変数自体への代入は許可されています。

let hisFamily: { readonly brother: string } = {
  brother: 'Lincoln Burrows'
}

hisFamily = {
  brother: ''
}
// → ⭕️

結論

const は変数自体を代入できなくなりますが、readonly はプロパティを代入できなくなります。

const と readonly を組み合わせることで、変数自体とオブジェクトのプロパティの両方が不変であるオブジェクトを作成できます。

const hisFamily: { readonly brother: string } = {
  brother: 'Lincoln Burrows'
}

hisFamily.brother = ''
// ❌ Cannot assign to 'brother' because it is a read-only property.

hisFamily = {
  brother: ''
}
// ❌ Cannot assign to 'hisFamily' because it is a constant.

コーディングを楽しんでください☀️

以上がType Script の readonly と const の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。