某项目要求输出这样的格式(含逗号) 供应商A, 供应商B, 供应商C
- 输入的数据为 arr = [‘供应商A’, ‘供应商B’, ‘供应商B’] ,试了几个现成的API, 好像都无法实现,索性自己封装了一个通用方法。
- 调用: arrIntervalInsert(arr.map(item=><span style={{color:‘red’}}>{item}</span>), ‘,’) 即可。
export const arrIntervalInsert = (arr, el) => {
if (Array.isArray(arr) && arr.length > 1) {
const total = arr.length * 2 - 1; //乘2减1,确保我们的元素个数为奇数个.
const arrTemp = [];
for (let index = 1; index < total; index++) {
if (index % 2 > 0) arrTemp.push(index) //过滤并生成1个形如[1,3,5,7,...2n-1]的新数组
};
arrTemp.forEach(num => arr.splice(num, 0, el)); //在传入数组的,索引值分别为1,3,5,7,...2n-1的地方插入传入的元素el
}
return arr;
}