at

Ouverte
#15 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
50/100
Type d'issue
Fonctionnalité
Clarté
Clairement spécifiée
Activité
À l'abandon
Stack technique
javascript
Domaine
tooling

Piste de recherche

Commencez par le point d’entrée at(i, x) et utilisez les exemples pour suivre les recherches dans des tableaux, des objets et des structures imbriquées. C’est terminé lorsque la fonction est curryfiée, accepte les formes de clés indiquées, s’arrête sur null ou undefined, renvoie la valeur demandée ou nil et ne lit pas dans les prototypes.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

at(i, x)

Returns value at given key, index or path in an array or object or combination of both.

Where:

  • i is a string, a number or an array of strings or numbers
  • x is either an array or an object

Examples

Value from an array
at(1)([41, 42, 43]);
//=> 42
Value from a object
at('answer')({answer: 42});
//=> 42
Value from a nested array
at([1, 1])([[31, 32], [41, 42]]);
//=> 42
Value from an object in a nested array
at([1, 'answer'])([[{}], [{answer: 42}]]);
//=> 42

Features

  • Function must be curried.
  • When given an array recursively go down x
  • Should avoid null pointer exception by conceding as soon as nil (i.e. either null or undefined) is detected.
  • Return either nil or the value at i.
  • Should not read from the prototype e.g. at('length', [1, 2, 3]) should return undefined not 3.
Langage dominant
JavaScript
Étoiles
1
Forks
0
Métriques de merge des PR
Aucune PR mergée en 30 j

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Issues similaires

Plus d'issues JavaScript

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.