Comment faire pour générer un tableau de l'alphabet en jQuery?
En Ruby je peux faire ('a'..'z').to_a
et pour obtenir ['a', 'b', 'c', 'd', ... 'z']
.
Faire jQuery ou Javascript fournir un analogue de construire?
- Non, vous devez créer votre propre.
Vous devez vous connecter pour publier un commentaire.
Vous pouvez facilement faire un fonction de le faire pour vous si vous aurez besoin de beaucoup
Personnellement, je pense que le mieux est:
Concis, efficace, lisible, simple et!
EDIT:
J'ai décidé que, puisque ma réponse est de recevoir une bonne quantité d'attention pour ajouter la fonctionnalité de choisir des gammes spécifiques de lettres.
('m'..'p').to_a
,('A'..'F').to_a
ou('1'..'5').to_a
?const alphabet = 'abcdefghijklmnopqrstuvwxyz'.split('').map((c) => c.toUpperCase());
to_a('A', 'z');
est? Outo_a('α', 'ω')
@MichaelLonghurst ? Aussi @sonlexqt si vous commandez votre ops l'inverse, vous économisez beaucoup de CPU;'abcdefghijklmnopqrstuvwxyz'.toUpperCase().split('')
a
àz
. Si vous parcoureza
àz
et imprimer le résultat et il contient tous les caractères dea
àz
, il n'y a pas de faute de frappe dans la série de 26 alphabetsUtilisation 97 au lieu de 65 pour obtenir les lettres minuscules.
'A'.charCodeAt(0)
pour supprimer un nombre magique (à un faible coût à la performance)Au cas où quelqu'un est venu ici à la recherche de quelque chose qu'ils peuvent coder en dur, ici, vous allez:
["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]
Un court ES6 version:
En utilisant ES6 propagation de l'opérateur que vous pourriez faire quelque chose comme ceci:
J'ai vu une réponse que j'ai aimé au-delà de ce qui a été le liste codée en dur de l'anglais alphabets, mais c'était en minuscules seulement et j'avais besoin d'une majuscule en trop j'ai donc décidé de le modifier au cas où quelqu'un d'autre en a besoin:
const lowerAlph = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"];
const upperCaseAlp = ["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];
['A','B','C','D','E','F','G','H','I','J','K','L','M','N','O','P','Q','R','S','T','U','V','W','X','Y','Z']
(copié à partir de la vôtre, et d'une certaine façon, vous avez différents style de code)Beaucoup de ces réponses, soit l'utilisation d'un tableau de caractères ou
String.fromCharCode
, je propose une méthode légèrement différente qui prend avantage de lettres dans base36:L'avantage de celui-ci est purement du code de golf, il utilise moins de caractères que les autres.
.toString(36)
rend alphabets..toString(36)
convertit un nombre en base 10 base 36. Ce code crée un tableau de nombres de 10 à 35 et les convertit chaque de base 36. 10->A, 11->B ... 35->Z.Pas de Javascript ou Jquery n'est pas de fournir quoi que ce soit. Vous devez créer votre propre tableau.
Vous pouvez essayer comme ceci:
ou mieux essayer comme ceci:
DÉMO
$.map()
pour créer un Tableau.$.map(Array(26), function(_, i) { return String.fromCharCode(i + 97); })
jsfiddle.net/agKrz/18var alpha = "abcdefghijklmnopqrstuvwxyz".split('');
À l'aide de JavaScript du Tableau.de la syntaxe vous permet de créer un tableau et d'effectuer une cartographie de la fonction de chacun des éléments du tableau. Créer un nouveau tableau de longueur 26 et sur chaque élément de la valeur égale à la chaîne de caractères obtenue à partir de la char code de l'index de l'élément courant, plus l'ascii nombre magique.
De nouveau, 97 peut être utilisée à la place de 65 ans pour les majuscules de l'alphabet.
Le tableau peut également être initialisé avec des valeurs à l'aide de l'objet clés de la méthode plutôt que l'utilisation de l'index de la carte
dans le cas où si vous avez besoin d'un codée en dur
array
de l'alphabet, mais avec moins de frappe. une solution alternative de ce qui est mentionné ci-dessus.va sortie un tableau comme ceci