Sens de l' #{ } en Ruby?
L'opération #{ }
semble si fondamentale que mon Ruby livre entièrement saute de sa définition. Quelqu'un peut-il fournir une explication?
Vous devez vous connecter pour publier un commentaire.
L'opération #{ }
semble si fondamentale que mon Ruby livre entièrement saute de sa définition. Quelqu'un peut-il fournir une explication?
Vous devez vous connecter pour publier un commentaire.
Pourquoi C'Est une Bonne Question
C'est une question difficile pour Google, sauf si vous savez les bons termes de recherche. Le
#{}
opérateur techniquement effectue expression de substitution à l'intérieur d'un littéral de chaîne.La Réponse
La
#{}
littéral est l'opérateur utilisé pour l'interpolation à l'intérieur de double-cité des chaînes de la même façon que les backticks ou$()
construire serait utilisé dans le Bash. À partir d'un point de vue pratique, l'expression à l'intérieur de la coquille est évaluée, puis l'ensemble de la#{}
d'expression (y compris à la fois l'opérateur et l'expression qu'il contient) est remplacé in situ avec le résultat.Liens Connexes
%Q{...}
chaînes, heredoc chaînes,%W{...}
tableaux, backtick commandes,%x{...}
les commandes et les Regexp littéraux.Il vous permet de mettre du code Ruby dans une chaîne. Donc:
De sortie:
Il est couramment utilisé pour insérer des valeurs de variables dans les chaînes sans avoir à perdre avec la concaténation de chaîne:
C'est la chaîne d'interpolation de l'opérateur, vous pouvez l'utiliser pour insérer une expression en chaîne de caractères.
Votre chaîne doit être intégrée dans " pour permettre à cette magie de travail, pas de 's.
Il est beaucoup plus rapide et mieux que la concaténation de chaîne.