> For the complete documentation index, see [llms.txt](https://halosoft.gitbook.io/shopify-theme-requrements/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://halosoft.gitbook.io/shopify-theme-requrements/js.md).

# JS

* File **theme.js** chứa các js được load sau khi load page, chung cho toàn theme. File global.js chứa các js được load trong khi load page, chung cho toàn theme.
* Tên file js thêm vào: ưu tiên bắt đầu bằng halo, viết hoa ký tự đầu của từ tiếp theo, không khoảng cách.
* Ưu tiên sử dụng Javascript thuần thay vì sử dụng Jquery.
* Sử dụng CustomElement và ES6+ để viết code.
* Viết các function chung để có thể sử dụng lại được nhiều nơi cho nhiều chức năng khác nhau
* Khai báo biến với từ khóa **var**, **let** hoặc **const** , và ta gán giá trị với dấu =;
* Đặt tên biến bằng tiếng Anh viết thường chữ cái đầu, ưu tiên sử dụng camelCase cho các biến có nhiều hơn một từ. Ví dụ **firstName** thay vì **first-name**.
* Format code với space 2 hoặc space 4, các câu lệnh có sự canh chỉnh gọn gàng.
* Khi so sánh dùng === thay vì ==
* Sử dụng template literal (template strings) để khai báo chuỗi:

<figure><img src="https://3810038871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7wRGiGMySPoVEOT9Sw6O%2Fuploads%2FJ4ujKLKYSYRccqjM0FVY%2Fimage.png?alt=media&amp;token=f6dc6519-c6e9-4921-ba1d-684760311da0" alt=""><figcaption></figcaption></figure>

* Đặt dấu ngoặc ở cùng dòng với if với dấu space:

<figure><img src="https://3810038871-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F7wRGiGMySPoVEOT9Sw6O%2Fuploads%2FLKzCFa13oL6Udu2nl5IE%2Fimage.png?alt=media&amp;token=418ac5dc-d809-45c1-8b63-5f5973db8bea" alt=""><figcaption></figcaption></figure>
