【问题标题】:Sum of a number for each element in an array [duplicate]数组中每个元素的数字总和[重复]
【发布时间】:2017-05-26 10:01:30
【问题描述】:

我正在使用一个 redux 函数,我希望数组中的每个元素与 n 数相加

这是代码

let neWd = array.map(x => {
  if (x === 'M' || x === 'L'){
    return x;
  }else{
    return x + 5;
  }
}).join(' ')

目前return x + 5 正在将5 数字添加到数组的任何元素中,但不是总和。

我怎样才能实现它?

【问题讨论】:

  • 哪个和?请同时添加数组。
  • 什么是“总和”?您的问题不清楚。
  • 给我们输入数组和预期数组
  • 您在寻找array.reduce吗?

标签: javascript arrays ecmascript-6 sum redux


【解决方案1】:

假设你有一个字符串,它被' ' 分割,然后你得到每个元素作为字符串。您需要将其转换为一个数字,在此示例中使用一元 + 以使用 5 递增。

此提案在空白处拆分,其长度可以超过一个字符。

var string = 'M 175 0  L 326.55444566227675 87.50000000000001  L 326.55444566227675 262.5  L 175 350  L 23.445554337723223 262.5  L 23.44555433772325 87.49999999999999 L 175 0',
    array = string.split(/\s+/),
    result = array.map(x => x === 'M' || x === 'L' ? x : +x + 5).join(' ');

console.log(result);

【讨论】:

  • 路径 d 正是我想要操作的数组 :)
  • 有一个小问题,像 [M 175 0 L 326] 这样的数组现在是结果 [M 180 5 5 1 L 331]
  • 我得到了正确的结果,请看上面。
  • 你是对的,我接受了答案,但我用相同的代码做错了gist.github.com/Mannaio/8360930e848c47edcdcfa85c0af8cedb
  • 可以添加原字符串吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-19
  • 1970-01-01
  • 1970-01-01
  • 2017-07-15
  • 1970-01-01
  • 2016-07-07
  • 2018-09-17
相关资源
最近更新 更多