Javascript 如何修改只读值?

Javascript 如何修改只读值?,javascript,typescript,Javascript,Typescript,我有一个值fetchOptions:Readonly,我想覆盖它的一个属性。 我尝试了以下方法: ((fetchOptions as Writable<HttpFetchOptionsWithPath>).headers as Writable<any>) = { 'new-value': '123', ...(fetchOptions.headers || {}), }; ((fetchOptions为可写)。headers为可写)={ “新值”:

我有一个值
fetchOptions:Readonly
,我想覆盖它的一个属性。 我尝试了以下方法:

((fetchOptions as Writable<HttpFetchOptionsWithPath>).headers as Writable<any>) = {
    'new-value': '123',
    ...(fetchOptions.headers || {}),
  };
((fetchOptions为可写)。headers为可写)={
“新值”:“123”,
…(fetchOptions.headers | |{}),
};
但是仍然得到一个
TypeError:无法分配给对象“#”的只读属性“headers”
error

执行的js代码如下所示:

fetchOptions.headers=u赋值({'newvalue':'123'},(fetchOptions.headers | |{}))


你知道我做错了什么吗?

你不能修改只读值。。您可以做的是将这些对象克隆到新实例中并继续使用新实例

Object.assign(newVariable, JSON.parse(JSON.stringify(oldVariable)));

如果你能提供更多的代码片段,我可以提供更多帮助,不管怎样,我都会根据问题中可用的内容回答。希望有帮助!你不能,这就是将属性设置为只读的目的。