Skip to content

Instantly share code, notes, and snippets.

@thedaviddias
Forked from rauschma/array-cheat-sheet.md
Created June 4, 2021 13:35
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save thedaviddias/621e3e4ca096352182dde20dd6a8a5fd to your computer and use it in GitHub Desktop.
Save thedaviddias/621e3e4ca096352182dde20dd6a8a5fd to your computer and use it in GitHub Desktop.

Cheat sheet: JavaScript Array methods

Deriving a new Array from an existing Array:

['■','●','▲'].slice(1, 3)           ['●','▲']
['■','●','■'].filter(x => x==='■')  ['■','■']
    ['▲','●'].map(x => x+x)         ['▲▲','●●']
    ['▲','●'].flatMap(x => [x,x])   ['▲','▲','●','●']

Computing a summary of an Array:

['■','●','▲'].some(x => x==='●')   true
['■','●','▲'].every(x => x==='●')  false

['■','●','▲'].join('-')  '--'

['■','●'].reduce((result,x) => result+x, '▲')       '▲■●'
['■','●'].reduceRight((result,x) => result+x, '▲')  '▲●■'

Changing all of an Array (the input Array is modified and returned):

['■','●','▲'].fill('●')  ['●','●','●']
['■','●','▲'].reverse()  ['▲','●','■']
['■','●','■'].sort()     ['■','■','●']

Finding Array elements:

['■','●','■'].includes('■')            true
['■','●','■'].indexOf('■')             0
['■','●','■'].lastIndexOf('■')         2
['■','●','■'].find(x => x==='■')       ''
['■','●','■'].findIndex(x => x==='■')  0

Listing elements (spreading via ... is needed because the methods return iterables):

[...['■','●','▲'].keys()]     [0,1,2]
[...['■','●','▲'].values()]   ['■','●','▲']
[...['■','●','▲'].entries()]  [[0,'■'],[1,'●'],[2,'▲']]

Adding or removing an element at either end of an Array:

arr=['■','●'];     arr.push('▲');    arr  ['■','●','▲']
arr=['■','●','▲']; arr.pop();        arr  ['■','●']

arr=['■','●'];     arr.unshift('▲'); arr  ['▲','■','●']
arr=['▲','■','●']; arr.shift();      arr  ['■','●']

Check out this quick reference for Array methods

My book “JavaScript for impatient programmers” contains a comprehensive quick reference:

  • Lists all Array methods (a few methods were omitted in the cheat sheet)
  • Brief explanations
  • Code examples
  • Method type signatures
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment