Liane: Mit spread Operator Rest eines Arrays auslesen?

Hallo,

kurze Frage...

Ich bilde mir dunkel ein, mit dem Spread Operator auf den Rest eines Arrays zugreifen zu können...

also:

const myArr = [1,2,3,4];
myArr[0]; // ===> 1
myArr[0, ...rest] // ===> rest = 2,3,4
console.log(rest) // ?

Ist das irgendwie möglich?

(Funktioniert natürlich auch mit slice/splice und myArr.length, ist aber nicht die Frage)

Danke!

P.S.: Mir ist klar, dass ich zwei Arrays "zusammenspreaden" kann, à la const concatArr = [...arr1, ...arr2], aber ich will hier ja eigentlich das Umgekehrte...

  1. Hallo,

    Ist das irgendwie möglich?

    suchst du slice?

    Gruß
    Kalk

  2. @@Liane

    Ich bilde mir dunkel ein, mit dem Spread Operator auf den Rest eines Arrays zugreifen zu können...

    → x = 1, rest =  2, 3, 4

    🖖 Живіть довго і процвітайте

    --
    „Im Vergleich mit Elon Musk bei Twitter ist ein Elefant im Porzellanladen eine Ballerina.“
    — @Grantscheam auf Twitter
    1. Hallo Gunnar Bittersmann,

      <genauheimer>

      [x, ...rest] = someAray;
      

      ist kein spread Operator, sondern, wie Du auch passend benannt hast, eine Kombination aus destrukturierender Zuweisung und rest Operator.
      </genauheimer>

      Da hat sich eigentlich in allen modernen Programmiersprachen eine Menge getan, von meiner "Muttersprache" C# versteh ich auch nur noch die Hälfte 😉.

      MDN hat das sehr schön formuliert: ... als spread Operator breitet ein Array auf mehrere Werte aus, und ... als rest Operator fasst es aus mehreren Werten zusammen.

      Die Einsatzmöglichkeiten nehmen mit jeder neuen Sprachversion zu.

      Rolf

      --
      sumpsi - posui - obstruxi
    2. @@Liane

      Ich bilde mir dunkel ein, mit dem Spread Operator auf den Rest eines Arrays zugreifen zu können...

      → x = 1, rest =  2, 3, 4

      🖖 Живіть довго і процвітайте

      Meine Güte, DAS wars!

      Dankeschön!

      1. Na, wenn es schon kein „spread Operator“ sein muss, dann gäbe es noch die nicht destruktive slice()-Methode:

        https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/slice

        oder die zerstörende splice()-Methode:

        https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/splice