javascript - 如何更改满足特定条件的数组的两个连续值?

标签 javascript arrays

我正在尝试在输入的数组的偶数之间添加破折号。由于它必须比较两个连续的迭代,我的想法是使用 reduce() 并将其与某些条件结合起来。我是编程新手,所以如果解决方案很好而且简单,那么我就能理解... :)

我知道这样行不通,但您明白了要点。 对于前。从“12534487”我想得到“12534-4-87”。

ar = prompt("numberInput").split("")
ar.map(x => parseInt(x));
ar.addDashToEven();
const addDashtoEven = (a, b) =>
  for (a % 2 == 0 && b % 2 == 0) {
    a = a + "-"
  }

最佳答案

您可以通过检查拆分和映射并加入数组以获取字符串。

此方法通过使用实际索引和新变量名称为最后一项获取 destructuring assignment

{ [i - 1]: l }

var string = '124568',
    result = string
        .split('')
        .map((r, i, { [i - 1]: l }) => (l % 2 === 0 && r % 2 === 0 ? '-' : '') + r)
        .join('');

console.log(result);

关于javascript - 如何更改满足特定条件的数组的两个连续值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56953152/

相关文章:

Javascript,递归函数读取记录

javascript - 如何对数组 : jQuery 中的元素进行排序

java - 将数组添加到另一个更大尺寸的数组

javascript - 移动图像 JavaScript

javascript - 使用 dom-select 列过滤 DataTable 列

javascript - 使用 JavaScript 将带有数组的 JSON 文件上传到不同的选项卡

php - 将具有多个数组的ajax数据发布到php

javascript - 去除Json中的空白

Web 应用程序的 JavaScript 键盘快捷键

javascript - HTML输入只接受0-9(英文数字)和০-৯(孟加拉语数字)?