Desculpe, ... mas ou não ouvi mencionar esta palavra, ou não foi mencionado. O que é o readonly ? Para que serve e qual é a sua finalidade no JavaScript ?
Desculpe, ... mas ou não ouvi mencionar esta palavra, ou não foi mencionado. O que é o readonly ? Para que serve e qual é a sua finalidade no JavaScript ?
O atributo readonly
é um modificador de acesso que indica que aquele campo é somente leitura, ou seja, só pode ser lido, mas não pode ser sobrescrito.
Readonly
no JSCada linguagem pode implementar essa funcionalidade de uma maneira. No JavaScript
, no momento, até onde sei, ainda não é um atributo nativo.
Então, caso queira ou precise fazer algo nesse sentido, precisará criar meios para permitir algo semelhante. O exemplo abaixo, adaptado e extraído deste link, pode ser entendido como um meio de usar o atributo readonly
em classes JS:
class MyReadOnly {
static get readonly() {
return "propriedade somente leitura";
}
static set readonly(value) {
throw new Error(`esta propriedade é somente leitura e não pode ser escrita pelo valor "${value}"`);
}
}
Entradas / Saídas:
MyReadOnly.readonly;
// "propriedade somente leitura"
MyReadOnly.readonly = "escreva isso..."
// Uncaught Error: esta propriedade é somente leitura e não pode ser escrita pelo valor "escreva isso..."
MyReadOnly.readonly;
// "propriedade somente leitura"
Você também pode optar por usar readonly
no JS usando o TypeScript
:
class Pessoa {
readonly firstName: string = "Marcia";
}
A formação de TS da Alura é muito boa! <3
Links para conhecer e saber mais: