Я новий у світі js, це дійсно змушує мене зробитиплутають, вчора я почав співпрацювати з underscore.js у своєму коді, тому я починаю спробувати це в середовищі REPL, я вибираю використовувати консоль Node, я придумав var _ = require (./underscore.js)
, то все добре працює.
Сьогодні я намагаюся вставити його в html, використовуючи <script>
тег, здається, мені не потрібно вручну var _ = underscore
, об'єкт _
вже там
хтось може пояснити, чому і як використовувати npm для встановлення підкреслення в глобальному масштабі і вимагати його без вказівки місця розташування файлу (наприклад, Ruby Require Module)
Відповіді:
2 для відповіді № 1Головна відмінність полягає в тому, що використання тегу сценарію додає всі глобальні прив'язки файлу до глобального об'єму все код на сторінці. Коли ви пишете JavaScript на веб-сайті, це виглядає так, як всі різні сценарії були в одному файлі.
Натоки вимагають, з іншого боку, набагато більшерозумно не заповнює глобальний масштаб таким чином. Замість цього, він повертає об'єкт, який містить все, що експортується модулем; це в основному простір імен модуля. Саме тому ви повинні зробити це _ = require("./underscore.js")
. Це краще, тому що вам не доведеться турбуватися про різні файли "конфліктуючих глобальних змінних".