JavaScript: Wie kann man zwei Arrays verbinden / kombinieren, um sie zu einem Array zu verketten?

Lesezeit: 2 Minuten

JavaScript Wie kann man zwei Arrays verbinden kombinieren um
Diesal11

Ich versuche, 2 Arrays in Javascript zu einem zu kombinieren.

var lines = new Array("a","b","c");
lines = new Array("d","e","f");

Dies ist ein kurzes Beispiel. Ich möchte sie so kombinieren können, dass beim Lesen der zweiten Zeile das vierte Element im Array “d” zurückgibt.

Wie würde ich das tun?

  • Dieselbe Frage, mehr (detaillierte) Antworten: stackoverflow.com/questions/1584370

    – ignis

    18. August 2012 um 6:44 Uhr

  • @David Auf alle einfachen Fragen gibt es mehr Antworten, weil mehr Leute sie googeln (oder ::shivers:: die integrierte Suchfunktion der Website verwenden).

    – Camilo Martin

    14. Dezember 2012 um 6:58 Uhr


  • @ignis Dies ist kein Duplikat. Diese Frage fragt speziell nach dem Entfernen von Duplikaten im resultierenden Array. Sie ist spezifischer, und diese Frage ist viel allgemeiner.

    – JD

    22. August 2015 um 16:08 Uhr

JavaScript Wie kann man zwei Arrays verbinden kombinieren um
Moin Zamann

var a = ['a','b','c'];
var b = ['d','e','f'];
var c = a.concat(b); //c is now an an array with: ['a','b','c','d','e','f']
console.log( c[3] ); //c[3] will be 'd'

  • @Matt ja, weil es nur ein Array ist, verfolgt es seinen Inhalt nicht.

    – Nate-Wilkins

    5. April 2013 um 19:19 Uhr

  • @geotheory check underscorejs, dafür gibt es eine Reduce-Funktion underscorejs.org 😉

    – Nicolas Grenie

    28. November 2013 um 0:05 Uhr

  • alter Beitrag, aber für alle, die jetzt googeln, hat die Frage von @geotheory eine einfache Antwort: Array.prototype.concat.apply([], [[1,2],[3,4],[5,6]])

    – sjmeverett

    3. November 2014 um 10:29 Uhr

  • mit es6 : c=a.push(...b)

    – Abdennour TOUMI

    14. August 2016 um 8:02 Uhr

  • Sie können auch Folgendes tun: const newArr = […arr1, …arr2];

    – Diego Fortés

    18. Februar 2018 um 20:30 Uhr

1646316311 138 JavaScript Wie kann man zwei Arrays verbinden kombinieren um
vitaly-t

Mit moderner JavaScript-Syntax – Spread-Operator:

const a = ['a', 'b', 'c'];
const b = ['d', 'e', 'f'];

const c = [...a, ...b]; // c = ['a', 'b', 'c', 'd', 'e', 'f']

Es ist heute auch der schnellste Weg, Arrays in JavaScript zu verketten.

  • Hilfreich (+1), aber hast du eine Quelle oder zumindest ein Argument für die Behauptung “schnellster Weg”?

    – kjhughes

    12. Januar um 0:02


Geschwindigkeitstest mit lokalem nodejs v16.4.
Objektverbreitung ist 3x schneller.

ObjectCombining.js

export const ObjectCombining1 = (existingArray, arrayToAdd) => {
  const newArray = existingArray.concat(arrayToAdd);
  return newArray;
};

export const ObjectCombining2 = (existingArray, arrayToAdd) => {
  const newArray = [ ...existingArray, ...arrayToAdd ]
  return newArray
};

ObjectCombining.SpeedTest.js

import Benchmark from 'benchmark';

import * as methods from './ObjectCombining.js';

let suite = new Benchmark.Suite();

const existingArray = ['a', 'b', 'c'];
const arrayToAdd = ['d', 'e', 'f'];

Object.entries(methods).forEach(([name, method]) => {
  suite = suite.add(name, () => method(existingArray, arrayToAdd));

  console.log(name, '\n', method(existingArray, arrayToAdd),'\n');
});

suite
  .on('cycle', (event) => {
    console.log(`🏎  ${event.target}`);
  })
  .on('complete', function () {
    console.log(`\n🏁 ${this.filter('fastest').map('name')} is fastest.\n`);
  })
  .run({ async: false });

Ergebnis
Ergebnisse

924140cookie-checkJavaScript: Wie kann man zwei Arrays verbinden / kombinieren, um sie zu einem Array zu verketten?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy