javascript - Что такое $$ (знак двойного доллара), используемый для углового?


1 Answers

Если я могу добавить:

Angularjs Docs

Помимо того, что они являются значимыми для Angularjs, «$$» или «$» являются просто символами, допускаемыми в именах переменных. Angularjs использует как для определения значимости для вас, так и для собственной команды разработчиков.

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

$$$$myVariableName; $myVariableName$; _myVariableName_; $$$$$$myVariableName$$$$$$$$

Вот ссылка, чтобы проверить имена переменных JS, если хотите:

Валидатор имен переменных

Вот ссылка на MDN, а также объяснение разрешенных символов:

Ссылка на MDN-символы

и вот текст:

переменные

Вы используете переменные как символические имена для значений в вашем приложении. Имена переменных, называемых идентификаторами, соответствуют определенным правилам.

Идентификатор JavaScript должен начинаться с буквы, подчеркивания (_) или знака доллара ($); последующие символы также могут быть цифрами (0-9). Поскольку JavaScript чувствителен к регистру, буквы включают символы «A» - «Z» (верхний регистр) и символы «a» - «z» (строчные буквы).

Начиная с JavaScript 1.5, вы можете использовать символы ISO 8859-1 или Unicode, такие как å и ü в идентификаторах. Вы также можете использовать escape-последовательности Unixode \ uXXXX как символы в идентификаторах.

Некоторые примеры юридических имен - Number_hits, temp99 и _name.

Angulajs включает в себя довольно много информации в каждом объекте; некоторые из них предназначены для Angularjs, а некоторые для разработчика, а это значит, что некоторые из них могут быть недоступны для редактирования, но все они должны быть доступны для справки, если это то, для чего вы собираетесь его использовать.

Однако в будущих выпусках любые частные идентификаторы могут исчезнуть, поскольку команда Angularjs ожидает, что разработчик не будет использовать зарезервированные / частные имена.

В случае опубликованной «аналогичной ссылки» вот что говорит Angularjs:

$ Префикс Соглашения о присвоении имен Вы можете создавать свои собственные услуги, и на самом деле мы сделаем именно это на шаге 11. Как соглашение об именах, встроенные службы Angular, методы Scope и несколько других Angular API имеют префикс $ перед имя.

Префикс $ существует для пространства имен, предоставляемых службами с угловым сервисом. Чтобы предотвратить коллизии, лучше не называть ваши сервисы и моделировать все, что начинается с $.

Если вы проверите область действия, вы также можете заметить некоторые свойства, начинающиеся с $$. Эти свойства считаются закрытыми и не должны быть доступны или изменены.

javascript angularjs

Я смотрю на угловой исходный код 1.2, и мне просто интересно, почему некоторые функции имеют префикс двух знака доллара. Это какая-то конвенция?



Related