Значение # {} в Ruby?

Операция#{ } кажется настолько фундаментальным, что моя книга по Ruby полностью пропускает свое определение. Может кто-нибудь дать объяснение?

Ответы на вопрос(3)

Решение Вопроса

Why This Is a Good Question

Это сложный вопрос для Google, если вы не знаете правильные условия поиска.#{} Оператор технически выполняетexpression substitution внутриstring literal.

The Answer

#{} литерал - это оператор, используемый для интерполяции внутриdouble-quoted strings так же, как бэкстикс или$() Конструкция будет использоваться в Bash. С практической точки зрения выражение внутри литерала оценивается, а затем весь#{} выражение (включая оператор и содержащееся в нем выражение) заменяетсяin situ с результатом.

Related Links

Это позволяет вам поместить код Ruby в строку. Так:

"three plus three is #{3+3}"

Будет ли вывод:

"three plus three is 6"

Обычно он используется для вставки значений переменных в строки без необходимости возиться с конкатенацией строк:

"Your username is #{user}"

Это оператор интерполяции строк, вы используете его для вставки выражения в строку. Ваша строка должна быть встроена в & quot; чтобы эта магия сработала, нет. Это намного быстрее и лучше, чем конкатенация строк.

var = "variable"
"this is a string with a #{var} in" => "this is a string with a variable in"

Ваш ответ на вопрос