Имеет ли одна кавычка (') или двойная кавычка (") функция, в которой они будут анализировать строку и заменить переменные значениями? Я помню, что в PHP механизм синтаксического анализа проанализирует строку и автоматически переключит любые переменные с их значениями (я не помню, что на самом деле имеет этот эффект с моей головы), поэтому вам не нужно вводить "somestring" + aVariable
, используя конкатенация оператора . в том, что я прочитал до сих пор на http://www.tutorialspoint.com/jquery/jquery-basics.htm Я ничего не смог найти. Кроме того, если я не пропустил его, сообщение When to use double or single quotes in JavaScript? напрямую не охватывает эту информацию.Выполняет ли одиночная кавычка (') и двойная кавычка (") в jQuery, как в PHP?
ответ
Нет, нет такого понятия, как интерполяция переменных в JavaScript (и, следовательно, JQuery)
И это очень хорошая вещь! Хотя PHP имеет все переменные, идентифицированные $
с самого начала, JavaScript не работает. Таким образом, даже простая строка, такие как "Hello world!"
может пойти наперекосяк, если вы имели переменную world
...
Вы можете быть заинтересованы в системе шаблонной, из которых есть много вариантов там - быстрый поиск Google повернет но here's список некоторых примеров и прочее.
true. Я никогда не думал об этом. –
, и именно поэтому строки шаблонов JS явно используют '$ {}' для маркировки битов, которые будут интерполированы. – Alnitak
Одиночные кавычки и двойные кавычки идентичны в JavaScript и не интерполируют переменные. По моему опыту, это хорошая практика придерживаться одинарных кавычек в JS, позволяя использовать двойные кавычки внутри этих строк (без экранирования) для таких вещей, как HTML-атрибуты.
Однако ES2015 ввел "template strings" с использованием кавычки, которые несколько как строки РНР в том, что они могут интерполировать в строку, и которые, если что-нибудь более мощное, потому что они на самом деле интерполировать любое выражение, а не только простой переменные:
let bar = 'bar';
let foo = `${bar}`;
let FOO = `${bar.toUpperCase()}`;
Я не думаю, что буду считать это «хорошей практикой» *, поскольку в некоторых случаях одинарные кавычки на других языках предназначены только для символов. Скорее всего, это проще ввести. –
@SpencerWieczorek Хорошо быть последовательным, хотя, и я говорил только о JS, а не о других языках. – Alnitak
Могу сказать, что вы можете использовать одинарные кавычки для атрибутов HTML, на самом деле не имеет значения, в каком направлении вы это делаете. –
Duplicate here http://stackoverflow.com/questions/7027986/single-or-double-quotes-in-jquery – berkayk
javascript позволяет использовать либо, что удобно, когда у вас есть цитаты, содержащие другие кавычки (вы используете один тип, чтобы заключить строку, а другой тип внутри) –
Также дублируется здесь http://stackoverflow.com/questions/2373074/single-vs-double-quotes-vs – jered