javascript - 动态使用连接方法

标签 javascript

我有一个基于每个英文字母索引的引用数组:

let reference = [0, 2, 3]; 

以及一系列单词甚至短语:

let words = ["A", "C", "D"];

我想加入words数组中的每个单词来创建一个简单的句子,但考虑到单词之间的间隙(只要引用数组中的值不是连续的数字!),所以所需的输出将是:

A...C D // gaps filled with three dots

问题是我找不到使用 join() 方法的解决方案!

任何帮助将不胜感激

最佳答案

您可以根据reference 中的空白,从words 创建一个新数组,然后加入:

let reference = [0, 2, 3];
let words = ["A", "C", "D"];

let res = [];
reference.forEach((n, i) => {
  if (n - reference[i - 1] >= 2) res.push('...', words[i]);
  else res.push(words[i]);
});

console.log(res.join(' '));

关于javascript - 动态使用连接方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58290003/

相关文章:

javascript - 通过 onsubmit 属性提交表单时 HTML5 模式验证不起作用

javascript - 有没有办法隐藏 IFRAME src 页面中的元素?

javascript - 避免 var _this = this;在编写 jQuery 事件处理程序时

javascript - 如何在使用javascript和ajax时在for循环(laravel)中使用许多动态下拉列表?

javascript - 这段 JavaScript 代码片段在做什么?

javascript - 如何使用 JavaScript 将变量与 if 语句中的数字进行比较?

javascript - 使变量在回调函数外部可见 - Ionic2

javascript - 使用按钮更改背景

javascript - 如何在谷歌图表中动态编辑表格?

javascript - 尝试在 then 中测试我的 catch block 没有成功