Maison >interface Web >js tutoriel >La différence entre lecture seule et const dans Type Script

La différence entre lecture seule et const dans Type Script

王林
王林original
2024-08-22 18:58:03275parcourir

The difference between readonly and const in Type Script

Ces deux fonctionnalités sont similaires dans le sens où elles sont toutes deux non cessibles.

Pouvez-vous l'expliquer exactement ?

Dans cet article, je partagerai les différences entre eux.

const empêche la réaffectation à une variable.

Dans ce cas, hisName est une variable qui ne peut pas être réaffectée.

const hisName = 'Michael Scofield'

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

Cependant, vous pouvez réaffecter à la propriété.

const hisFamily = {
  brother: 'Lincoln Burrows'
}

hisFamily.brother = ''
// → ⭕️

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

la lecture seule empêche la réaffectation à une propriété.

Par exemple, si vous essayez d'attribuer une valeur à brother en lecture seule, une erreur de compilation se produira.

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

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

En revanche, l'affectation à la variable elle-même est autorisée.

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

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

Conclusion

const rend la variable elle-même non attribuable, tandis que readonly rend la propriété non attribuable.

En combinant const et readonly, vous pouvez créer un objet où la variable elle-même et les propriétés de l'objet sont immuables.

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.

Joyeux codage☀️

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Système solaire avec Three.jsArticle suivant:Système solaire avec Three.js