Ответы:
Ваш фрагмент кода выглядит так, как будто он ссылается на методы из одной из популярных библиотек JavaScript (jQuery, ProtoType, mooTools и т. Д.).
Нет ничего загадочного в использовании $JavaScript. $просто допустимый идентификатор JavaScript.
JavaScript допускает прописные и строчные буквы, цифры и $и _. Он $был предназначен для использования сгенерированными машиной переменными (такими как $0001).
Прототип, jQuery и большинство библиотек javascript используют в $качестве основного базового объекта (или функции). У большинства из них также есть способ отказаться, $чтобы его можно было использовать с другой библиотекой, которая его использует. В этом случае вы используете jQueryвместо $. На самом деле $это просто ярлык для jQuery.
Из другого ответа :
Немного истории
Помните, в этом нет ничего особенного $. Это имя переменной, как и любое другое. В прежние времена люди писали код, используя document.getElementById. Поскольку JavaScript чувствителен к регистру, во время записи было нормально ошибиться document.getElementById. Должен ли я капитал 'b'из 'by'? Должен ли я капитал 'i'из Id?вас получить дрейф. Поскольку функции являются первоклассными гражданами в JavaScript, вы всегда можете сделать это:
var $ = document.getElementById; //freedom from document.getElementById!
Когда библиотека Prototype прибыла, они назвали свою функцию, которая получает элементы DOM, как '$'. Почти все библиотеки JavaScript скопировали эту идею. Прототип также представил$$ функция выбора элементов с помощью CSS-селектора.
jQuery также адаптировал $функцию, но расширил ее, чтобы он мог принимать всевозможные «селекторы» для получения нужных вам элементов. Теперь, если вы уже используете Prototype в своем проекте и хотите включить jQuery, у вас возникнут проблемы, так как вы '$'можете обратиться либо к реализации Prototype, либо к реализации jQuery. Вот почему jQuery имеет опцию noConflict, так что вы можете включить jQuery в ваш проект, который использует Prototype и медленно переносить ваш код. Я думаю, что это был блестящий шаг со стороны Джона! :)
var $ = document.getElementById;не работает в Firefox или Google Chrome. Вы должны использовать function $(id) { return document.getElementById(id); }вместо этого. См. Stackoverflow.com/questions/1007340 для получения дополнительной информации.
Это, скорее всего, код jQuery (точнее, JavaScript с использованием библиотеки jQuery).
$Представляет функцию JQuery , и на самом деле является сокращенным псевдоним jQuery. (В отличие от большинства языков, $символ не зарезервирован и может использоваться в качестве имени переменной.) Обычно он используется как селектор (то есть функция, которая возвращает набор элементов, найденных в DOM).
Как говорят все остальные ответы; это может быть что угодно, но обычно это JQuery.
Однако в ES6 это оператор интерполяции строк в шаблоне «литерал» например.
var s = "new" ; // you can put whatever you think appropriate here.
var s2 = `There are so many ${s} ideas these days !!` ; //back-ticks not quotes
console.log(s2) ;
результат:
В наши дни так много новых идей!
Это $()сокращенная версия, jQuery()используемая в библиотеке jQuery .
В дополнение к вышеприведенным ответам, $не имеет особого значения в javascript, его можно свободно использовать в именовании объектов. В JQuery , он просто используется в качестве псевдонима для JQuery объекта и JQuery () функции. Однако вы можете столкнуться с ситуациями, когда вы захотите использовать его вместе с другой библиотекой JS, которая также использует $, что может привести к конфликту имен. Есть метод в JQuery только по этой причине,jQuery.noConflict() .
Вот пример из документации JQuery :
<script src="other_lib.js"></script>
<script src="jquery.js"></script>
<script>
$.noConflict();
// Code that uses other library's $ can follow here.
</script>
Кроме того, вы также можете использовать как это
(function ($) {
// Code in which we know exactly what the meaning of $ is
} (jQuery));
Из документации jQuery, описывающей базовый объект jQuery :
Многие разработчики добавляют префикс $ к имени переменных, которые содержат объекты jQuery, чтобы помочь дифференцировать. В этой практике нет ничего волшебного - она просто помогает некоторым людям отслеживать, что содержат различные переменные.