javascript - 将每个值移动到数组中自己的唯一索引中的最简单方法是什么?
问题描述
我有一个包含嵌套值的数组,我需要每个值都是唯一的。这些值始终用逗号分隔。所以以下输入将返回:
输入 => ["1", "1", "1,2", "1", "1", "1,34", "1,34", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1"]
输出=>
["1", "1", "1", "2", "1", "1", "1,", "34", "1", "34", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "1", "2", "12", "1"
]
解决方案
用逗号分割,然后扩展到[].concat
平面图:
const input = ["1", "1", "1,2", "1", "1", "1,34", "1,34", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1,2", "1"];
console.log(
[].concat(...input.map(str => str.split(',')))
);
在较新的浏览器中,您可以使用Array.prototype.flatMap
而不是concat
传播技巧:
input.flatMap(str => str.split(','));
推荐阅读
- java - 缩放文件夹中的图像
- .net - 是否有可用的轻量级工作流编排库
- heroku - Flask / CSRF Missing/Expired Token for users with a Proxy on Heroku
- laravel - Laravel:中间件问题
- r - 间隔号
- python - 使用 Numpy FFT 未获得预期结果
- python - 如何在大文本文件中拆分组合列表?
- excel - 如何获得所需范围的 MessageBox?
- python - 如何从不同模型中获取查询集的 json 响应列表?
- javascript - 是否可以通过节点模块在浏览器应用程序和 Nativescript 应用程序之间共享 Vuex 商店?