繁体   English   中英

类型 void 不可分配给数组

[英]type void is not assignable to array

提示:本站为国内最大中英文翻译问答网站,提供中英文对照查看,鼠标放在中文字句上可显示英文原文

我正在尝试创建一种方法,该方法从数组的每个元素的字符串(包含数字的字符串)中删除所有零;

我收到此错误“类型 void 不可分配给程序 []

 public removeLeadingZeros(programs: Program[]) {
    let programCopy: Program[];
    programCopy= programs.forEach(p => {
      p.number.replace(/^0+/, '');
    });

    return programCopy;
  }

作为另一个答案的替代方案,您可以使用.map()来返回您已更改的数组,而不是使用不返回任何内容的.forEach()

let programCopy: Program[];
programCopy = programs.map(p => {
  p.number.replace(/^0+/, '');
  return p;
});

编辑:这是此代码的较短版本

let programCopy: Program[] = programs.map(p => p.number.replace(/^0+/, ''));

那是因为forEach没有任何返回类型。

如果您想在 programCopy 中存储带有替换数字的对象,只需复制程序参数并更改它们:

programCopy = programs;
programCopy.forEach(p => {
  p.number.replace(/^0+/, '');
});

使用以下代替 forEach 循环:

programCopy = programs.filter(p => p !== 0);

您可以使用过滤方法。 它返回过滤项的数组。 现在,programCopy 变量包含不带零的数字。

您可以使用这种方法。

 public removeLeadingZeros(programs: Program[]) { let programCopy: Program[]; programs.forEach(p => { programCopy.push(p.number.replace(/^0+/, '')) }); return programCopy; }

问题未解决?试试本站强大的搜索功能,搜索: 类型 void 不可分配给数组
类型“ void”的参数不能分配给类型数组的参数

[英]Argument of type 'void' is not assignable to parameter of type array

我创建了一个包含数据库字段的接口,其次我创建了一个服务,其中我创建了一个使用Http services访问数据的函数。现在我想使用相同的创建函数在mat-table中显示数据。 ...

2018-03-19 08:53:37 1 59   angular
void 不可分配给 > '() => void' 类型的参数

[英]Void is not assignable to > parameter of type '() => void'

我有一个 angular 应用程序,它最初是在 Angular 2 中编写的,然后升级到 7,然后升级到 9,现在尝试从 11 开始。 我的代码有一个 function ,它在最初加载应用程序时通过套接字从后端获取用户的通知计数(下面的代码),这工作正常,但在 Angular 11 中不再这样做。我 ...

类型 'void' 不可分配给类型 'string'

[英]Type 'void' is not assignable to type 'string'

我正在尝试使用库(echarts)创建图表,但我认为这是一个异步错误。 我想在方法 buildChartConfiguration 中使用方法 addSpacesToString。 “(属性)TitleOption.text?:字符串类型'void'不可分配给类型'string'” 我究竟做错了 ...

Angular 7:类型“void[]”不可分配给类型

[英]Angular 7: Type 'void[]' is not assignable to type

我需要填充以下类型的文档对象。 我正在使用 Angular 7 打字稿。 我收到错误类型 'void[]' 不能分配给类型 'IDocumentDetails[] 我在这行代码中遇到错误 代码 ...

2019-07-05 06:28:32 4 2451   angular
类型“无效”不可分配给类型“订阅”

[英]Type 'void' is not assignable to type 'Subscription'

在将我的项目从 Angular 11 升级到 12、将 rxjs 从 6.6.6 升级到 7.1.0 并将 Typescript 从 3.9.7 升级到 4.0.2 之后,我收到以下与我的计时器订阅相关的错误: material-input.component.ts:1262:7 - 错误 ...

类型 'void[]' 不能分配给类型 'Foo[]'

[英]Type 'void[]' is not assignable to type 'Foo[]'

我正在使用ramda map和forEach方法,但是当我将 hover 转到result变量时。 它给出了以下错误: 类型 'void[]' 不能分配给类型 'Foo[]'。 数据类型Foo和代码是正确的,我确信这一点。 我知道我缺少return声明。 我不确定在哪里添加。 谁能帮我解决这个问题 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2023 STACKOOM.COM