JavaScript | Слияние двух массивов.
Тема закрыта by
Копирайтер [!]
popka_slonika (04.11.2021 в 14:30)
Нее. Ты не понял.
Мне нужно перемешать массив. А не слить в поочередности.
Нужно [1, 'One', 2, 'Two']
Нее. Ты не понял.
Мне нужно перемешать массив. А не слить в поочередности.
Нужно [1, 'One', 2, 'Two']
JavaScript | Слияние двух массивов.
Вилы Выкидные (04.11.2021 в 14:34)
JavaScript | Слияние двух массивов.
JavaScript | Слияние двух массивов.
Иногда кроме заголовка, нужно еще и суть темы читать. Не?
может так сработает? выводит: 1 a 2 b 3 c 4 d e f
javascript
let par1 = [1,2,3,4]; let par2 = ['a','b','c','d','e','f']; let final = []; par1.forEach((val, index) => final.splice(index * 2, 0, val)); par2.forEach((val, index) => final.splice(index * 2 + 1, 0, val)); final.forEach((val) => console.log(`${val} `)); popka_slonika (04.11.2021 в 14:41)
Иногда кроме заголовка, нужно еще и суть темы читать. Не?
Иногда кроме заголовка, нужно еще и суть темы читать. Не?
И зачем тебе числовые значения массива преобразовывать в строковые?
Зачем тебе вообще массив целых чисел по порядку?
Вилы Выкидные (04.11.2021 в 14:45)
И зачем тебе числовые значения массива преобразовывать в строковые?
Зачем тебе вообще массив целых чисел по порядку?
И зачем тебе числовые значения массива преобразовывать в строковые?
Зачем тебе вообще массив целых чисел по порядку?
Кто тебе сказал что там именно такие массивы? Я их привел для примера, что бы раскрыть вопрос.
Два массива нужно слить в один, но в определенной последовательности. Массивы могут быть разные. Суть одна и так же.
Вилы Выкидные , да и два варианта своих я уже написал выше, они абсолютно рабочие.
Мне нужно максимально упростить уже готовый велосипед.
Мне нужно максимально упростить уже готовый велосипед.
javascript
let array1 = ['one','two','three', 'asd']; let array2 = [1,2,3, 4, 5, 6, 7]; function concatByIndex(array1, array2) { const final = []; while (array1.length || array2.length) { array1.length && final.push(array1.shift()); array2.length && final.push(array2.shift()); } return final; } console.log(concatByIndex(array1, array2)); ________
посл. ред. 04.11.2021 в 16:35; всего 1 раз(а); by mrcatoff
mrcatoff (04.11.2021 в 16:34)
Да, оно. Но опять же, мой велосипед намного короче в записи. Мне нужно урезать все в минимум.
javascript
let array1 = ['one','two','three', 'asd']; let array2 = [1,2,3, 4, 5, 6, 7]; function concatByIndex(array1, array2) { const final = []; while (array1.length || array2.length) { array1.length && final.push(array1.shift()); array2.length && final.push(array2.shift()); } return final; } console.log(concatByIndex(array1, array2));
popka_slonika , так мой вариант тоже самое выводит, и вроде короче) но можно и ещё сократить по идее:
------
79679_result.png (12.7 Kb)
Скачиваний: 184
javascript
let par1 = [1,2,3,4]; let par2 = ['a','b','c','d','e','f']; let final = []; [...par1, ...par2].forEach((val, index) => final.splice(index < par1.length ? index * 2 : (index - par1.length) * 2 + 1, 0, val)); console.log(final); ------
Скачиваний: 184
Стр.: 1, 2
